Ubuntu軟件包易用性、靈活性
讓大家理解LIUNX Ubuntu軟件包作用,然后全面介紹Ubuntu軟件包是用方法,希望對大家有用。Ubuntu 宣言: 軟件應(yīng)免費(fèi)提供,軟件工具應(yīng)能以人們本地語種的形式可用且不犧牲任何功能,人們應(yīng)擁有定制及改變他們軟件的自由,這包括以任何他們認(rèn)為適宜的方式。
Ubuntu軟件包管理概述
Ubuntu Linux采用了Debian的軟件包管理機(jī)制。由于Ubuntu軟件包具有易用性、靈活性和擴(kuò)展性的特點(diǎn),再加上Internet的支持,使用戶隨時(shí)都能擁有最新的 Ubuntu系統(tǒng),這也是Ubuntu受到推崇的一個(gè)重要原因。因而,Deb軟件包管理也成為Ubuntu中最有活力的部分。本章介紹Ubuntu軟件包管理和dpkg軟件包管理器。
Deb軟件包概述
Deb軟件包本質(zhì)上是文件包,這點(diǎn)類似于tar文件將多個(gè)文件合并為一個(gè)歸檔文件。但是Deb的身價(jià)不在于整合文件,而在于使應(yīng)用程序更易于傳播。
流行的兩種Ubuntu軟件包管理機(jī)制
最初,基于Linux系統(tǒng)的開發(fā)者在完成應(yīng)用程序開發(fā)后,將很多二進(jìn)制文件發(fā)給用戶,用戶使用之前需要將相關(guān)程序逐個(gè)安裝。因此,Debian Linux首先提出“Ubuntu軟件包”的管理機(jī)制——Deb軟件包,將應(yīng)用程序的二進(jìn)制文件、配置文檔、man/info幫助頁面等文件合并打包在一個(gè)文件中,用戶使用Ubuntu軟件包管理器直接操作軟件包,完成獲取、安裝、卸載、查詢等操作。
隨即,Redhat Linux基于這個(gè)理念推出了自己的軟件包管理機(jī)制——Rpm軟件包。當(dāng)然,Redhat Linux采用了自己的打包格式生成Rpm包文件,由Rpm包管理器負(fù)責(zé)安裝、維護(hù)、查詢,甚至Ubuntu軟件包版本管理。由于Redhat Linux系統(tǒng)的普及,Rpm軟件包被廣泛使用,甚至出現(xiàn)第三方開發(fā)的軟件管理工具,專門管理Rpm格式的軟件包。
隨著Linux操作系統(tǒng)規(guī)模的不斷擴(kuò)大,系統(tǒng)中軟件包之間復(fù)雜的依賴關(guān)系,導(dǎo)致Linux用戶麻煩不斷。為了解決這個(gè)問題,Debian Linux開發(fā)出了APT軟件包管理器。它能夠自動(dòng)檢查和修復(fù)軟件包之間的依賴關(guān)系。并且,利用Internet網(wǎng)絡(luò)帶來的快捷的連通手段,APT工具可以幫助用戶主動(dòng)獲取Ubuntu軟件包。因此,APT工具再次促進(jìn)了Deb軟件包更為廣泛地使用,成為Debian Linux的一個(gè)無法替代的亮點(diǎn)。
Ubuntu Linux系統(tǒng)的軟件包管理機(jī)制延續(xù)了Debian的包管理方法。
Ubuntu軟件包的類型
Debian包文件包含了二進(jìn)制可執(zhí)行文件、庫文件、配置文件和man/info幫助頁面等文檔。通常Debian包文件的后綴為.deb,因此稱為“Deb軟件包”。Ubuntu有兩種類型的軟件包:二進(jìn)制軟件包(deb)和源碼包(deb-src)。
二進(jìn)制軟件包(Binary Packages):包含可執(zhí)行文件、庫文件、配置文件、man/info頁面、版權(quán)聲明和其他文檔。
源碼包(Source Packages):包含軟件源代碼、版本修改說明、構(gòu)建指令以及編譯工具等。先由tar工具歸檔為.tar.gz文件,然后再打包成.dsc文件。
用戶不確定一個(gè)軟件包具體類型時(shí),可以使用file命令查看文件類型。例如下面命令用于證實(shí)一個(gè)軟件包的文件類型是否是Deb軟件包文件。
wdl@UbuntuFisher:~$ file g++_4.1.2-9ubuntu2_i386.deb
g++_4.1.2-9ubuntu2_i386: Debian binary package (format 2.0)
在Ubuntu Linux中,需要說明一個(gè)概念——虛擬軟件包。將系統(tǒng)中具有相同或相近功能的多個(gè)軟件包作為一個(gè)軟件包集合,稱為虛擬軟件包,并指定其中一個(gè)軟件包作為虛擬軟件包的默認(rèn)首選項(xiàng)。提出虛擬軟件的意圖就是為了防止軟件安裝過程中發(fā)生沖突。例如,exim、sendmail和postfix軟件包都是用于郵件傳輸代理,將“mail-transport-agent”指定為它們的虛擬軟件包。當(dāng)用戶安裝“mail-transport-agent”時(shí),將選擇安裝exim、sendmail和postfix其中的首選項(xiàng)。
Ubuntu軟件包的命名
在Ubuntu Linux中,軟件包的命名遵循以下約定:Filename_Version-Reversion_Architecture.deb
其中,F(xiàn)ilename表示軟件包文件名,Version表示軟件版本號(hào),Reversion表示修訂版本號(hào),Architecture表示適用計(jì)算機(jī)架構(gòu)。通常,修訂版本號(hào)是由Ubuntu開發(fā)者或創(chuàng)建這個(gè)Ubuntu軟件包的人指定。在軟件包被修改過之后,將修改版本號(hào)加1。
以g++_4.1.2-9ubuntu2_i386.deb軟件包為例,g++是軟件包名,4.1.2是軟件版本號(hào),9ubuntu2是修訂版本號(hào),i386是適用的計(jì)算機(jī)架構(gòu)。
【編輯推薦】