1. 程式人生 > >Linux下載命令之rpm和yum比較

Linux下載命令之rpm和yum比較

下載安裝 root 刪除 錯誤 rec resign sharp one ldp

RPM和YUM比較

rpm 是linux的一種軟件包名稱,以.rmp結尾,安裝的時候語法為:rpm -ivh,rpm包的安裝有一個很大的缺點就是文件的關聯性太大,有時候裝一個軟件要安裝很多其他的軟件包,很麻煩,所以為此RedHat小紅帽開發了yum安裝方法,他可以徹底解決這個關聯性的問題,很方便,只要配置兩個文件即可安裝,安裝方法是:yum -y install ,yum並不是一中包,而是安裝包的軟件(RPM只是單單下載安裝本安裝包,而YUM會把與該安裝包相關相互依賴的其他包一起安裝)

RPM

RPM是Red-Hat Package Manager(RPM軟件包管理器)的縮寫

技術分享圖片
rpm [-acdhilqRsv][-b<完成階段><套間檔>+][-e<套件擋>][-f<文件>+][-i<套件檔>][-p<套件檔>+][-U<套件檔>][-vv][--addsign<套件檔>+][--allfiles][--allmatches][--badreloc][--buildroot<根目錄>][--changelog][--checksig<套件檔>+][--clean][--dbpath<數據庫目錄>][--dump][--excludedocs][--excludepath<排除目錄>][--force][--ftpproxy<主機名稱或IP地址>][--ftpport<通信端口>][--help][--httpproxy<主機名稱或IP地址>][--httpport<通信端口>][--ignorearch][--ignoreos][--ignoresize][--includedocs][--initdb][justdb][--nobulid][--nodeps][--nofiles][--nogpg][--nomd5][--nopgp][--noorder][--noscripts][--notriggers][--oldpackage][--percent][--pipe<執行指令>][--prefix<目的目錄>][--provides][--queryformat<檔頭格式>][--querytags][--rcfile<配置檔>][--rebulid<套件檔>][--rebuliddb][--recompile<套件檔>][--relocate<原目錄>=<新目錄>][--replacefiles][--replacepkgs][--requires][--resign<套件檔>+][--rmsource][--rmsource<文件>][--root<根目錄>][--scripts][--setperms][--setugids][--short
-circuit][--sign][--target=<安裝平臺>+][--test][--timecheck<檢查秒數>][--triggeredby<套件檔>][--triggers][--verify][--version][--whatprovides<功能特性>][--whatrequires<功能特性>]
語法 技術分享圖片
-a  查詢所有套件。
-b<完成階段><套件檔>+或-t <完成階段><套件檔>+  設置包裝套件的完成階段,並指定套件檔的文件名稱。
-c  只列出組態配置文件,本參數需配合"
-l"參數使用。 -d  只列出文本文件,本參數需配合"-l"參數使用。 -e<套件檔>或--erase<套件檔>  刪除指定的套件。 -f<文件>+  查詢擁有指定文件的套件。 -h或--hash  套件安裝時列出標記。 -i  顯示套件的相關信息。 -i<套件檔>或--install<套件檔>  安裝指定的套件檔。 -l  顯示套件的文件列表。 -p<套件檔>+  查詢指定的RPM套件檔。 -q  使用詢問模式,當遇到任何問題時,rpm指令會先詢問用戶。 -R  顯示套件的關聯性信息。 -s  顯示文件狀態,本參數需配合"
-l"參數使用。 -U<套件檔>或--upgrade<套件檔> 升級指定的套件檔。 -v  顯示指令執行過程。 -vv  詳細顯示指令執行過程,便於排錯。 -addsign<套件檔>+  在指定的套件裏加上新的簽名認證。 --allfiles  安裝所有文件。 --allmatches  刪除符合指定的套件所包含的文件。 --badreloc  發生錯誤時,重新配置文件。 --buildroot<根目錄>  設置產生套件時,欲當作根目錄的目錄。 --changelog  顯示套件的更改記錄。 --checksig<套件檔>+  檢驗該套件的簽名認證。 --clean  完成套件的包裝後,刪除包裝過程中所建立的目錄。 --dbpath<數據庫目錄>  設置欲存放RPM數據庫的目錄。 --dump  顯示每個文件的驗證信息。本參數需配合"-l"參數使用。 --excludedocs  安裝套件時,不要安裝文件。 --excludepath<排除目錄>  忽略在指定目錄裏的所有文件。 --force  強行置換套件或文件。 --ftpproxy<主機名稱或IP地址>  指定FTP代理服務器。 --ftpport<通信端口>  設置FTP服務器或代理服務器使用的通信端口。 --help  在線幫助。 --httpproxy<主機名稱或IP地址>  指定HTTP代理服務器。 --httpport<通信端口>  設置HTTP服務器或代理服務器使用的通信端口。 --ignorearch  不驗證套件檔的結構正確性。 --ignoreos  不驗證套件檔的結構正確性。 --ignoresize  安裝前不檢查磁盤空間是否足夠。 --includedocs  安裝套件時,一並安裝文件。 --initdb  確認有正確的數據庫可以使用。 --justdb  更新數據庫,當不變動任何文件。 --nobulid  不執行任何完成階段。 --nodeps  不驗證套件檔的相互關聯性。 --nofiles  不驗證文件的屬性。 --nogpg  略過所有GPG的簽名認證。 --nomd5  不使用MD5編碼演算確認文件的大小與正確性。 --nopgp  略過所有PGP的簽名認證。 --noorder  不重新編排套件的安裝順序,以便滿足其彼此間的關聯性。 --noscripts  不執行任何安裝Script文件。 --notriggers  不執行該套件包裝內的任何Script文件。 --oldpackage  升級成舊版本的套件。 --percent  安裝套件時顯示完成度百分比。 --pipe<執行指令>  建立管道,把輸出結果轉為該執行指令的輸入數據。 --prefix<目的目錄>  若重新配置文件,就把文件放到指定的目錄下。 --provides  查詢該套件所提供的兼容度。 --queryformat<檔頭格式>  設置檔頭的表示方式。 --querytags  列出可用於檔頭格式的標簽。 --rcfile<配置文件>  使用指定的配置文件。 --rebulid<套件檔>  安裝原始代碼套件,重新產生二進制文件的套件。 --rebuliddb  以現有的數據庫為主,重建一份數據庫。 --recompile<套件檔>  此參數的效果和指定"--rebulid"參數類似,當不產生套件檔。 --relocate<原目錄>=<新目錄>  把本來會放到原目錄下的文件改放到新目錄。 --replacefiles  強行置換文件。 --replacepkgs  強行置換套件。 --requires  查詢該套件所需要的兼容度。 --resing<套件檔>+  刪除現有認證,重新產生簽名認證。 --rmsource  完成套件的包裝後,刪除原始代碼。 --rmsource<文件>  刪除原始代碼和指定的文件。 --root<根目錄>  設置欲當作根目錄的目錄。 --scripts  列出安裝套件的Script的變量。 --setperms  設置文件的權限。 --setugids  設置文件的擁有者和所屬群組。 --short-circuit  直接略過指定完成階段的步驟。 --sign  產生PGP或GPG的簽名認證。 --target=<安裝平臺>+  設置產生的套件的安裝平臺。 --test  僅作測試,並不真的安裝套件。 --timecheck<檢查秒數>  設置檢查時間的計時秒數。 --triggeredby<套件檔>  查詢該套件的包裝者。 --triggers  展示套件檔內的包裝Script。 --verify  此參數的效果和指定"-q"參數相同。 --version  顯示版本信息。 --whatprovides<功能特性>  查詢該套件對指定的功能特性所提供的兼容度。 --whatrequires<功能特性>  查詢該套件對指定的功能特性所需要的兼容度。
參數說明

查詢

rpm -qa			列出操作系統上安裝的所有的rpm包;
rpm -qf /usr/sbin/httpd 查詢一個已經安裝的文件屬於哪個軟件包,可以是普通文件或可執行文件,跟文件的絕對路徑;
rpm -ql PACKAGE_NAME	查詢已安裝軟件包都安裝到何處;
rpm -qi PACKAGE_NAME	列出已安裝的這個包的標準詳細信息;
rpm -qc PACKAGE_NAME	查看一下已安裝軟件的配置文件;
rpm -qd PACKAGE_NAME	查看一個已經安裝軟件的文檔安裝位置: 
rpm -qR PACKAGE_NAME	查看一下已安裝軟件所依賴的軟件包及文件;

修改

【安裝】
rpm -ivh rpm文件	其中-i表示安裝(install)包,-v表示查看詳細的安裝信息,-h表示顯示安裝進度。後面是包的名稱
【更新】
rpm -Uvh rpm文件	其中-U表示安裝(Update)包,-v表示查看詳細的安裝信息,-h表示顯示安裝進度。後面是包的名稱
【刪除】
rpm -e PACKAGE_NAME
rpm -e –nodeps PACKAGE_NAME    #不考慮依賴包
rpm -e –allmatches PACKAGE_NAME    #刪除所有跟PACKAGE_NAME匹配的所有版本的包

YUM

yum = Yellow dog Updater, Modified 主要功能是更方便的添加/刪除/更新RPM包. 它能自動解決包的倚賴性問題. 它能便於管理大量系統的更新問題

yum list PACKAGE_NAME		搜索一個包
yum check-update 			檢查可以更新的軟件包 
yum info PACKAGE_NAME		查看包的信息
yum remove PACKAGE_NAME		卸載一個包
yum install PACKAGE_NAME	安裝包
yum update					所有的包該升級的都會升級,很可能把內核也升級
yum upgrade					大規模的升級
yum update PACKAGE_NAME		升級特定的包

  

Linux下載命令之rpm和yum比較