三個部分來講linux中的軟體管理,前二個部分是基本介紹,也是重點,讓大家明白linux的不同的管理軟體的方法。在實際用中,推薦大家多使用apt-get和yum.那是相當的方便。
Windows下安裝軟體時,只需運行軟體的安裝程序(setup、install等)或者用zip等解壓縮軟體解開即可安裝,運行反安裝程序
(uninstall、unware、”卸載”等)就能將軟體清除乾淨,完全圖形化的操作界面,簡單到只要用滑鼠一直點擊”下一步”就可以。
Linux好象就不一樣,很多的初學者都抱怨在Linux下安裝和卸載軟體非常地困難,沒有像使用Windows時那麼直觀。其實在Linux下安裝和
卸載軟體也非常簡單,同樣也有安裝嚮導或解壓安裝的方式,不相同的只不過是除二進位形式的軟體分發外,還有許許多多以源代碼形式分發的軟體包。
下面就來詳細地講一講這些軟體的安裝與卸載:
一、二進位分發軟體包的安裝與卸載
Linux軟體的二進位分發是指事先已經編譯好二進位形式的軟體包的發布形式,其優點是安裝使用容易,缺點則是缺乏靈活性,如果該軟體包是為特定的硬體平台編譯的,那它就不能在另外的平台或環境下正確執行。
1、*.rpm形式的二進位軟體包
安裝:rpm -ivh *.rpm
卸載:rpm -e packgename
說明:RPM(RedHat Packge
Manager)是RedHat公司出的軟體包管理器,使用它可以很容易地對rpm形式的軟體包進行安裝、升級、卸載、驗證、查詢等操作,安裝簡單,而卸
載時也可以將軟體安裝在多處目錄中的文件刪除乾淨,因此推薦初學者儘可能使用rpm形式的軟體包。rpm的參數中-i是安裝,-v是校驗,-h是用散列符
顯示安裝進度,*.rpm是軟體包的文件名(這裡的*.rpm特指*.src.rpm以外的以rpm為後綴的文件);參數-e是刪除軟體
包,packgename是軟體包名,與軟體包的文件名有所區別,它往往是文件名中位於版本號前面的字元串,例如apache-3.1.12-
i386.rpm和apache-devel-3.1.12-i386.rpm是軟體包文件名,它們的軟體包名稱分別是apache和apache-
devel.更多的rpm參數請自行參看手冊頁:man rpm.
如果你不喜歡在字元界面下安裝或卸載這些軟體包,完全可以在X-Window下使用圖形界面的軟體包管理程序。現在這些做的非常好。
2、*.tar.gz/*.tgz、*.bz2形式的二進位軟體包
安裝:tar zxvf *.tar.gz 或 tar yxvf *.bz2
卸載:手動刪除
說明:*.tar.gz/*.bz2形式的二進位軟體包是用tar工具來打包、用gzip/bzip2壓縮的,安裝時直接解包即可。對於解壓後
只有單一目錄的軟體,卸載時用命令”rm -rf
軟體目錄名”;如果解壓後文件分散在多處目錄中,則必須一一手動刪除(稍麻煩),想知道解壓時向系統中安裝哪些文件,可以用命令”tar ztvf
*.tar.gz”/”tar ytvf
*.bz2″獲取清單。tar的參數z是調用gzip解壓,x是解包,v是校驗,f是顯示結果,y是調用bzip2解壓,t是列出包的文件清單。更多的參
數請參看手冊頁:man tar.
如果你更喜歡圖形界面的操作,可以到Ubuntu上看看他的包管理,超級方便。
3、提供安裝程序的軟體包
這類軟體包已經提供安裝腳本或二進位的安裝嚮導程序(setup、install、install.sh等),只需運行它就可以完成軟體的安
裝;而卸載時也相應地提供反安裝的腳本或程序。例如SUN公司的StarOffice辦公軟體套件就使用名為setup的安裝程序,而且在軟體安裝後提
供反安裝的功能,目前這種類型的軟體包還比較少,因其安裝與卸載的方式與Windows軟體一樣,所以就無需多講。
二、源代碼分發軟體包的安裝與卸載
Linux軟體的源代碼分發是指提供該軟體所有程序源代碼的發布形式,需要用戶自己編譯成可執行的二進位代碼並進行安裝,其優點是配置靈活,可以隨意去掉或保留某些功能/模塊,適應多種硬體/操作系統平台及編譯環境,缺點是難度較大,一般不適合初學者使用。
1、*.src.rpm形式的源代碼軟體包
安裝:rpm -rebuild *.src.rpm
cd /usr/src/dist/RPMS
rpm -ivh *.rpm
卸載:rpm -e packgename
說明:rpm –rebuild *.src.rpm命令將源代碼編譯並在/usr/src/dist/RPMS下生成二進位的rpm包,然後再安裝該二進位包即可。packgename如前所述。
2、*.tar.gz/*.tgz、*.bz2形式的源代碼軟體包
安裝:tar zxvf *.tar.gz 或 tar yxvf *.bz2 先解壓
然後進入解壓後的目錄:
./configure 配置
make 編譯
make install 安裝
卸載:make uninstall 或 手動刪除
說明:建議解壓後先閱讀說明文件,可以解安裝有哪些需求,有必要時還需改動編譯配置。有些軟體包的源代碼在編譯安裝後可以用make
install命令來進行卸載,如果不提供此功能,則軟體的卸載必須手動刪除。由於軟體可能將文件分散地安裝在系統的多個目錄中,往往很難把它刪除乾淨,
那你應該在編譯前進行配置,指定軟體將要安裝到目標路徑:./configure –prefix=目錄名,這樣可以使用”rm -rf
三。使用yum和apt-get.軟體管理方法的升級。
1.先講Redhat的yum這種高級的包管理。
用YUM安裝刪除軟體
裝系統添加刪除軟體是常事,yum同樣可以勝任這一任務,只要軟體是rpm安裝的。
安裝的命令是,yum install xxx,yum會查詢資料庫,有無這一軟體包,如果有,則檢查其依賴衝突關係,如果沒有依賴衝突,那麼最好,下載安裝;如果有,則會給出提示,詢問是否要同時安裝依賴,或刪除衝突的包,你可以自己作出判斷。
刪除的命令是,yum remove xxx,同安裝一樣,yum也會查詢資料庫,給出解決依賴關係的提示。
用YUM安裝軟體包
命令:yum install
用YUM刪除軟體包
命令:yum remove
2.用YUM查詢軟體信息
我
們常會碰到這樣的情況,想要安裝一個軟體,只知道它和某方面有關,但又不能確切知道它的名字。這時yum的查詢功能就起作用。你可以用 yum
search keyword這樣的命令來進行搜索,比如我們要則安裝一個Instant Messenger,但又不知到底有哪些,這時不妨用
yum search
messenger這樣的指令進行搜索,yum會搜索所有可用rpm的描述,列出所有描述中和messeger有關的rpm包,於是我們可能得到
gaim,kopete等等,並從中選擇。
有時我們還會碰到安裝一個包,但又不知道其用途,我們可以用yum info packagename這個指令來獲取信息。
使用YUM查找軟體包
命令:yum search
列出所有可安裝的軟體包
命令:yum list
列出所有可更新的軟體包
命令:yum list updates
列出所有已安裝的軟體包
命令:yum list installed
列出所有已安裝但不在 Yum Repository 內的軟體包
命令:yum list extras
列出所指定的軟體包
命令:yum list
2.講講Ubuntu中的高級包管理方法apt-get
除apt的便捷以外,apt-get的一大好處是極大地減小所謂依賴關係惡夢的發生
幾率(dependency hell),即使是陷入dependency hell,apt-get也提供很好的
通常 apt-get 都和網上的壓縮包一起出沒,從互聯網上下載或是安裝。全世界有超
過200個 debian 官方鏡像,還有繁多的非官方軟體包提供網站。你所使用的基於D
ebian的發布版不同,你所使用的軟體倉庫可能需要手工選擇或是可以自動設置。你
能從Debian官方網站得到完整的鏡像列表。而很多非官方網站提供各種特殊用途的
非官方軟體包,當然,使用非官方軟體包會有更多風險。
軟體包都是為某一個基本的Debian發布版所準備的(從unstable到stable),並且劃
分到不同類別中(如 main contrib nonfree),這個是依據 debian 自由軟體綱領而
劃分的(也就是常說的dfsg),因為美國限制加密軟體出口,還有一個non-us類別。
常用的APT命令參數
apt-cache search package 搜索包
apt-cache show package 獲取包的相關信息,如說明、大小、版本等
sudo apt-get install package 安裝包
sudo apt-get install package – – reinstall 重新安裝包
sudo apt-get -f install 修復安裝”-f = –fix-missing”
sudo apt-get remove package 刪除包
sudo apt-get remove package – – purge 刪除包,包括刪除配置文件等
sudo apt-get update 更新源
sudo apt-get upgrade 更新已安裝的包
sudo apt-get dist-upgrade 升級系統
sudo apt-get dselect-upgrade 使用 dselect 升級
apt-cache depends package 解使用依賴
apt-cache rdepends package 是查看該包被哪些包依賴
sudo apt-get build-dep package 安裝相關的編譯環境
apt-get source package 下載該包的源代碼
sudo apt-get clean && sudo apt-get autoclean 清理無用的包
sudo apt-get check 檢查是否有損壞的依賴
以下文章點擊率最高
Loading…