(轉).tar.gz文件和.rpm文件的區別


場景:在Linux環境下安裝軟件時候總是會遇到安裝軟件格式的選擇,以及安裝。

1 軟件的二進制分發

Linux軟件的二進制分發是指事先已經編譯好二進制形式的軟件包的發布形式,

優點是安裝使用容易,缺點則是缺乏靈活性,如果該軟件包是為特定的硬件/操作系統平台編譯的,那它就不能在另外的平台或環境下正確執行。 

1.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。 
ps:注意區別軟件包的文件名和軟件報名之間的區別。

1.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壓縮檔案管理工具。 

2 軟件的源代碼分發

Linux軟件的源代碼分發是指提供了該軟件所有程序源代碼的發布形式,需要用戶自己編譯成可執行的二進制代碼並進行安裝,其優點是配置靈活,可以隨意去掉或保留某些功能/模塊,適應多種硬件/操作系統平台及編譯環境,缺點是難度較大,一般不適合初學者使用。 

2.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.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已有一定經驗的人,一般不推薦初學者使用。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM