實驗樓 Linux 下軟件安裝

一般 Linux 上的軟件安裝主要有四種方式:前端

  • 在線安裝
  • 從磁盤安裝deb軟件包
  • 從二進制軟件包安裝
  • 從源代碼編譯安裝

apt 包管理工具介紹

APT是Advance Packaging Tool(高級包裝工具)的縮寫,是Debian及其派生髮行版的軟件包管理器,APT能夠自動下載,配置,安裝二進制或者源代碼格式的軟件包,所以簡化了Unix系統上管理軟件的過程。APT最先被設計成dpkg的前端,用來處理deb格式的軟件包。如今通過APT-RPM組織修改,APT已經能夠安裝在支持RPM的系統管理RPM包。這個包管理器包含以 apt- 開頭的的多個工具,如 apt-get apt-cache apt-cdrom 等,在Debian系列的發行版中使用。sql

當你在執行安裝操做時,首先apt-get 工具會在本地的一個數據庫中搜索關於 w3m 軟件的相關信息,並根據這些信息在相關的服務器上下載軟件安裝,這裏你們可能會一個疑問:既然是在線安裝軟件,爲啥會在本地的數據庫中搜索?要解釋這個問題就得提到幾個名詞了:數據庫

  • 軟件源鏡像服務器
  • 軟件源

咱們須要按期從服務器上下載一個軟件包列表,使用 sudo apt-get update 命令來保持本地的軟件包列表是最新的(有時你也須要手動執行這個操做,好比更換了軟件源),而這個表裏會有軟件依賴信息的記錄,對於軟件依賴,我舉個例子:咱們安裝 w3m 軟件的時候,而這個軟件須要 libgc1c2 這個軟件包才能正常工做,這個時候 apt-get 在安裝軟件的時候會一併替咱們安裝了,以保證 w3m 能正常的工做。ubuntu

apt-get

apt-get 是用於處理 apt包的公用程序集,咱們能夠用它來在線安裝、卸載和升級軟件包等,下面列出一些apt-get包含的經常使用的一些工具:ruby

工具 說明
install 其後加上軟件包名,用於安裝一個軟件包
update 從軟件源鏡像服務器上下載/更新用於更新本地軟件源的軟件包列表
upgrade 升級本地可更新的所有軟件包,但存在依賴問題時將不會升級,一般會在更新以前執行一次update
dist-upgrade 解決依賴關係並升級(存在必定危險性)
remove 移除已安裝的軟件包,包括與被移除軟件包有依賴關係的軟件包,但不包含軟件包的配置文件
autoremove 移除以前被其餘軟件包依賴,但如今再也不被使用的軟件包
purge 與remove相同,但會徹底移除軟件包,包含其配置文件
clean 移除下載到本地的已經安裝的軟件包,默認保存在/var/cache/apt/archives/
autoclean 移除已安裝的軟件的舊版本軟件包

下面是一些apt-get經常使用的參數:bash

參數 說明
-y 自動迴應是否安裝軟件包的選項,在一些自動化安裝腳本中使用這個參數將十分有用
-s 模擬安裝
-q 靜默安裝方式,指定多個q或者-q=#,#表示數字,用於設定靜默級別,這在你不想要在安裝軟件包時屏幕輸出過多時頗有用
-f 修復損壞的依賴關係
-d 只下載不安裝
--reinstall 從新安裝已經安裝但可能存在問題的軟件包
--install-suggests 同時安裝APT給出的建議安裝的軟件包 

軟件搜索

當本身剛知道了一個軟件,想下載使用,須要確認軟件倉庫裏面有沒有,就須要用到搜索功能了,命令以下:服務器

sudo apt-cache search softname1 softname2 softname3…… 

apt-cache 命令則是針對本地數據進行相關操做的工具,search 顧名思義在本地的數據庫中尋找有關 softname1 softname2 …… 相關軟件的信息。網絡

使用 dpkg

dpkg 是 Debian 軟件包管理器的基礎,它被伊恩·默多克建立於 1993 年。dpkg 與 RPM 十分類似,一樣被用於安裝、卸載和供給和 .deb 軟件包相關的信息。編輯器

dpkg 自己是一個底層的工具。上層的工具,像是 APT,被用於從遠程獲取軟件包以及處理複雜的軟件包關係。"dpkg"是"Debian Package"的簡寫。工具

咱們常常能夠在網絡上見到以deb形式打包的軟件包,就須要使用dpkg命令來安裝。

dpkg經常使用參數介紹:

參數 說明
-i 安裝指定deb包
-R 後面加上目錄名,用於安裝該目錄下的全部deb安裝包
-r remove,移除某個已安裝的軟件包
-I 顯示deb包文件的信息
-s 顯示已安裝軟件的信息
-S 搜索已安裝的軟件包
-L 顯示已安裝軟件包的目錄信息

使用dpkg安裝deb軟件包

咱們先使用apt-get加上-d參數只下載不安裝,下載emacs編輯器的deb包,下載完成後,咱們能夠查看/var/cache/apt/archives/目錄下的內容,以下圖:

而後咱們將第一個deb拷貝到home目錄下,並使用dpkg安裝

$ cp /var/cache/apt/archives/emacs24_24.3+1-4ubuntu1_amd64.deb ~ # 安裝以前參看deb包的信息 $ sudo dpkg -I emacs24_24.3+1-4ubuntu1_amd64.deb 

如你所見,這個包還額外依賴了一些軟件包,這意味着,若是主機目前沒有這些被依賴的軟件包,直接使用dpkg安裝可能會存在一些問題,由於dpkg並不能爲你解決依賴關係。

# 使用dpkg安裝 $ sudo dpkg -i emacs24_24.3+1-4ubuntu1_amd64.deb 

跟前面預料的同樣,這裏你可能出現了一些錯誤:

咱們將如何解決這個錯誤了,這就要用到apt-get了,使用它的-f參數了,修復依賴關係的安裝

$ sudo apt-get -f install 

沒有任何錯誤,這樣咱們就安裝成功了,而後你能夠運行emacs程序

相關文章
相關標籤/搜索