Linux作業系統下軟體的安裝與卸載在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下使用圖形介面的軟體包管理程式,如glint、xrpm這樣的圖形介面,或者是KDE的kpackge等,這樣對軟體包的安裝、升級、卸載、驗證和查詢就可以通過點擊滑鼠來輕鬆完成。
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。
如果你更喜歡圖形介面的操作,可以在X-Window下使用KDE的ArK壓縮檔案管理工具。
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 軟體目錄名”命令來進行乾淨徹底的卸載。與其它安裝方式相比,需要使用者自己編譯安裝是最難的,它適合於使用Linux已有一定經驗的人,一般不推薦初學者使用。
關於Linux下軟體的安裝與卸載lanche已經講了這麼多,但可能還會有人問怎麼知道一個tar.gz/bz2包是二進位檔案包呢還是原始碼包?如果你用過壓縮公用程式就會明白,壓縮包未必就是軟體,它也可能是備份的許多圖片,也可能是打包在一起的普通資料,要分辨它到底是什麼最好的辦法就是查看包裡的檔案清單,使用命令tar ztvf *.tar.gz / tar ytvf *.bz2或者在X-Window下使用圖形化的ArK壓縮檔案管理工具都可以,原始碼包裡的檔案往往會含有種種原始碼檔案,標頭檔*.h、c代碼源檔案*.c、C++代碼源檔案*.cc/*.cpp等;而二進位包裡的檔案則會有可執行檔(與軟體同名的往往是主執行檔案),標誌是其所在路徑含有名為bin的目錄(僅有少數例外)。原來這麼簡單呀,還不快點自己試試!