安裝特定版本的軟件包可用於在您知道所關注的軟件包版本時避免錯誤,並確保通過保留軟件包來禁用特定軟件包的更新,以便在您運行時它不會自動更新’ apt-get 升級’。
為了處理基於 Debian 的系統包,我們使用 apt-get 命令。 要運行此命令,您需要管理權限或具有以下權限的用戶 sudo 特權。
在本教程中,我將向您展示如何在 Ubuntu 16.04 或 20.04 LTS 上安裝特定版本的軟件包。
1) 檢查可用版本的軟件包
有時您可能會遇到某個軟件包版本的問題或錯誤,這可能會導致您選擇一個不會遇到錯誤的版本。 在安裝之前,可以使用以下命令檢查軟件包的可用版本 apt-cache madison
命令。 語法是
apt-cache madison package
你可以看到下面的輸出
$ apt-cache madison virtualbox
virtualbox | 5.0.40-dfsg-0ubuntu1.16.04.2 | https://cm.archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 Packages
virtualbox | 5.0.18-dfsg-2build1 | https://cm.archive.ubuntu.com/ubuntu xenial/multiverse amd64 Packages
你也可以使用下面的語法命令
apt-cache policy package
就像下面
$ apt-cache policy virtualbox
virtualbox:
Installed: (none)
Candidate: 5.0.40-dfsg-0ubuntu1.16.04.2
Version table:
5.0.40-dfsg-0ubuntu1.16.04.2 500
500 https://cm.archive.ubuntu.com/ubuntu xenial-updates/multiverse amd64 Packages
5.0.18-dfsg-2build1 500
500 https://cm.archive.ubuntu.com/ubuntu xenial/multiverse amd64 Packages
然後,使用這兩個命令之一,您可以決定使用官方網站或官方 GitHub 上的發布版本檢查包的可用版本。
2) 安裝特定版本的包
當您列出了選擇特定版本的版本後,您可以使用 apt-get install
命令後跟包的名稱和版本。 因此,您需要遵循以下語法:
apt-get install package=version -V
這 -V
參數有助於獲得有關安裝的更多詳細信息
實際上,您可以執行以下操作:
# apt-get install virtualbox=5.0.18-dfsg-2build1 -V
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
dkms (2.2.0.3-2ubuntu11.5)
libgsoap8 (2.8.28-1)
libqt4-opengl (4:4.8.7+dfsg-5ubuntu2)
libsdl1.2debian (1.2.15+dfsg1-3)
libvncserver1 (0.9.10+dfsg-3ubuntu0.16.04.1)
virtualbox-dkms (5.0.40-dfsg-0ubuntu1.16.04.2)
....................
....................
一個。 模擬安裝
出於某種原因,您可能需要確保安裝不會遇到任何問題。 為此,可以使用 -s
符合語法的參數
# apt-get install -s package
如下
# apt-get install -s virtualbox=5.0.18-dfsg-2build1
您可以看到它顯示了安裝過程,但這只是一個模擬。
灣列出已安裝的包和版本
您可能需要檢查已安裝軟件包的版本。 你可以用 dpkg
命令結合 grep
後跟包的名稱
# dpkg -l | grep virtualbox
ii unity-scope-virtualbox 0.1+13.10.20130723-0ubuntu1 all VirtualBox scope for Unity
ii virtualbox 5.0.18-dfsg-2build1 amd64 x86 virtualization solution - base binaries
ii virtualbox-dkms 5.0.40-dfsg-0ubuntu1.16.04.2 all x86 virtualization solution - kernel module sources for dkms
如果要過濾信息,可以使用如下命令
# dpkg -l | grep '^ii' | grep virtualbox | awk '{print $2 "t" $3}'
unity-scope-virtualbox 0.1+13.10.20130723-0ubuntu1
virtualbox 5.0.18-dfsg-2build1
virtualbox-dkms 5.0.40-dfsg-0ubuntu1.16.04.2
要使用版本列出所有已安裝的軟件包,您可以使用 dpkg -l
命令。
結論
您很少會遇到安裝特定軟件包的情況,希望本教程對您有所幫助。 請在下面的評論部分留下您的評論和建議。
Related Read: How to List Installed Packages by Date on Linux