包管理與源是Linux學習中不可缺少的部份,同時也令很多初學者倍感困惑。本文整理了1些Linux相干的包管理與源方面的材料,希望對大家有幫助。
Linux中的軟件包主要分為RPM軟件包及DEB軟件包兩類,其中Redhat Linux等系統(tǒng)使用RPM軟件包,Ubuntu Linux等系統(tǒng)使用Deb軟件包。本文主要側重介紹Ubuntu Linux的包管理方法。
首先要介紹幾個概念和理解:
(1)安裝就是把軟件送到1個特定的位置,并且配置好其周邊環(huán)境,使之能夠正確運行。
(2)Deb包就是1個緊縮起來的可以安裝的軟件包。
(3)源是提供軟件下載的站點,不同的源提供的軟件可能不同。
(4)Ubuntu建立本地數據庫,記錄軟件包之間的依賴關系。
(5)軟件包管理工具的作用是提供在操作系統(tǒng)中安裝、升級、卸載需要的軟件的方法,并提供對系統(tǒng)中所有軟件狀態(tài)信息的查詢。
如果能夠理解上面的幾點,就能夠對包管理有1個基本的認識。Ubuntu中使用的是Deb軟件包,在/etc/apt/sources.list配置文件中保存了提供deb軟件包下載的站點,即源。由于該軟件包間可能存在依賴關系,1旦安裝的軟件包多至1定數量,手工的安裝與卸載將會非常繁瑣且容易出錯。為了解決這1問題,出現(xiàn)了很多高級軟件包管理工具,如apt-get、aptitude、yum、synaptic等。以apt-get為例,該工具會建立本地數據庫,記錄軟件包之間的依賴關系。當要安裝某軟件包時,會從源中搜索并下載到本地,同時還會檢查該軟件包依賴的所有其他包,并安裝系統(tǒng)中還沒有安裝的依賴包;刪除則采取類似的方式,從而簡化了包管理進程。值得注意的是,這些高級包管理工具終究都是調用dpkg來完成的。
另外,要介紹幾個包管理中經常使用到的命令,詳細用于可以使用man command或command --help了解并學習。
(1)dpkg
是“debian package”的簡寫,是Debian軟件包管理器的基礎。
(2)apt-get
用于從遠程獲得軟件包和處理復雜的軟件包關系。
apt-get update:在修改源后,需要運行該命令,另外也需要定期運行該命令以確保本機的軟件包列表是最新的。
apt-get upgrade:用以更新軟件包
apt-get dist-upgrade:將系統(tǒng)升級到新版本。
apt-get source:下載源代碼。
(3)apt-cache
apt-cache search string:在軟件包列表中搜索字符串
apt-cache showpkg:顯示軟件包信息
(4)alien
可完成rpm軟件包與deb軟件包之間的轉換。
alien -to-deb:轉換為deb軟件包
alien -to-rpm:轉換為rpm軟件包
最后,還有介紹幾種初學者常遇到問題的解決方案。
(1)怎樣安裝tar文件?
1般情況下,這里面保存了軟件的源代碼,需要先用tar命令解壓并進行編譯,最后安裝。
解壓根據文件打包格式使用相應命令,然落后入到解壓出的目錄,
1般順次履行./configure
make
sudo make install
便可完成安裝。
(2)怎樣安裝下載好的deb軟件包?
sudo dpkg -i package.deb或
sudo alien -i package.deb
(3)怎樣在Ubuntu中安裝rpm軟件包?
首先,要使用alien將rpm包轉換為deb包。
sudo alien --to-deb package.rpm
接著依照deb軟件包安裝方式進行安裝。
(4)怎樣查詢本機已安裝的軟件包?
使用dpkg -l | more命令