熱搜:win11繞過(guò)硬件限制安裝 一鍵重裝Win10系統(tǒng) 最干凈的u盤啟動(dòng)盤 真正純凈版的win7系統(tǒng)
時(shí)間:2015-02-09 17:54:12 作者:qipeng 來(lái)源:系統(tǒng)之家 1. 掃描二維碼隨時(shí)看資訊 2. 請(qǐng)使用手機(jī)瀏覽器訪問(wèn): https://m.xitongzhijia.net/xtjc/20150209/37802.html 手機(jī)查看 評(píng)論 反饋
在Linux系統(tǒng)操作中,常見的軟件包管理系統(tǒng)有RPM和YUM,使用它們能夠?qū)inux系統(tǒng)進(jìn)行管理,今天小編要給大家介紹的是CentOS系統(tǒng)中RPM軟件包的管理,感興趣的朋友可以來(lái)了解下。
在Linux發(fā)行版中,幾乎每一個(gè)發(fā)行版都有自己的軟件包管理系統(tǒng)。常見的有deb軟件包的dpkg以及它的前端apt(適用于debian、Ubuntu等)。rpm以及它的前端yum(適用于RedHat系列的系統(tǒng))。
RPM,全稱RPM Package Manager,是由Red Hat推出的軟件包管理系統(tǒng),現(xiàn)在在各種發(fā)行版中普遍適用。
RRM軟件包是將程序源代碼經(jīng)過(guò)編譯和封裝以后形成的包文件,在軟件包里面會(huì)封裝軟件的二進(jìn)制程序、配置文件、幫助手冊(cè)、庫(kù)文件以及頭文件等。RPM包的結(jié)構(gòu)如下圖所示:
RPM軟件包的安裝與卸載:
# rpm [options] /path/to/rpmfile
option:
-i|--install:安裝指定軟件
-v|--verbose:顯示安裝過(guò)程
-e|--erase:卸載指定的軟件
-h|--hash:以#的方式顯示安裝進(jìn)度條,一個(gè)#為2%
--nodeps:忽略依賴關(guān)系
--test:測(cè)試安裝
-U:升級(jí)+安裝(如果之前有安裝則升級(jí),如果之前沒(méi)有安裝則安裝)
-F:升級(jí)(如果之前有安裝則升級(jí),如果之前沒(méi)安裝則不做任何操作)
--replacepkgs:重新安裝軟件包
--force:在軟件包的安裝或升級(jí)過(guò)程中,如果出現(xiàn)某個(gè)文件已經(jīng)安裝或者某一個(gè)軟件已經(jīng)安裝時(shí)
可以使用--force選項(xiàng)強(qiáng)制安裝,等同于--replacepkgs --replacefiles --oldpackage同時(shí)使用
常用的軟件包安裝選項(xiàng)為:
#rpm -ivh /path/to/rpmfile
# rpm -Uvh /path/to/rpmfile
示例 1:
RPM軟件包驗(yàn)證:
RPM包使用gpg非對(duì)稱加密機(jī)制,可以驗(yàn)證包的完整性和來(lái)源的合法性。
# rpm --import PUBKEY:rpm使用--import導(dǎo)入軟件包提供者制作的公鑰,可以自動(dòng)進(jìn)行軟件包的驗(yàn)證
#rpm {-K|--checksig} [--nosignature] [--nodigest] PACKAGE_FILE:rpm可以使用-K或--checksig選項(xiàng)對(duì)軟件包進(jìn)行來(lái)源和完整性的驗(yàn)證,--nosignature選項(xiàng)是指不進(jìn)行來(lái)源合法性驗(yàn)證,--nodigest選項(xiàng)是指不進(jìn)行完整性驗(yàn)證
示例 2:
RPM查詢:
# rpm {-q|--query} [select-options] [query-options] [PACKAGE_NAME|PACKAGE_FILE]
常用select-option:
-a|--all:將已安裝的所有包顯示在屏幕上(Query all installed packages )
# rpm -qa
-f|--file FILE:根據(jù)指定的文件顯示出該文件由哪一個(gè)包生成(Query package owning FILE)
-p|--package PACKAGE_FILE:根據(jù)指定的軟件包文件,搭配query-option選項(xiàng)可查詢未安裝的包信息。
常用query-option:
-l|--list:列出該軟件包安裝后需要生成的所有文件( List files in package)
-i|--info:顯示軟件包的信息,包括名稱、版本和描述
。―isplay package information, including name, version and description)
-c|--configfiles:僅顯示-l選項(xiàng)列出文件中的配置文件(List only configuration files (implies -l))
-d|--docfiles:僅顯示-l選項(xiàng)列出文件中的文檔或幫助手冊(cè)(List only documentation files (implies -l))
--scripts:顯示該軟件包在安裝或卸載前后需要運(yùn)行的腳本
(List the package specific scriptlet(s) that are used as part of the installation and uninstallation
processes)
示例 3:
RPM校驗(yàn):
RPM還提供了對(duì)軟件包生成的文件進(jìn)行校驗(yàn)的功能(可針對(duì)文件大小、權(quán)限、MD5、修改時(shí)間等進(jìn)行校驗(yàn)),當(dāng)沒(méi)有任何改變時(shí)候,顯示9個(gè)‘-’,如果某一項(xiàng)發(fā)生改變則在相應(yīng)位顯示標(biāo)識(shí)符,各標(biāo)識(shí)符代表含義如下:
S文件大小發(fā)送改變(file Size differs)
M文件權(quán)限發(fā)生改變(Mode differs (includes permissions and file type))
5文件MD5值發(fā)送改變(digest (formerly MD5 sum) differs)
D裝置的主/次代碼發(fā)生改變(Device major/minor number mismatch)
L 路徑發(fā)生改變(readLink(2) path mismatch)
U屬主發(fā)生改變(User ownership differs)
G屬組發(fā)生改變(Group ownership differs)
T修改時(shí)間發(fā)生改變(mTime differs)
P能力發(fā)生改變(caPabilities differ)
# rpm {-V|--verify} PAKCAGE_NAME
示例 4:
備注:這個(gè)是我在/etc/lftp.conf文件末尾新增了一行后的校驗(yàn)結(jié)果
RPM包數(shù)據(jù)庫(kù):
RPM軟件包有一個(gè)本地的數(shù)據(jù)庫(kù)(在/var/lib/rpm目錄下),RPM包的安裝、升級(jí)和刪除都會(huì)更新數(shù)據(jù)庫(kù)的信息。但是當(dāng)數(shù)據(jù)庫(kù)損壞之后,軟件包的更新卸載就會(huì)出現(xiàn)錯(cuò)誤,F(xiàn)在只需要將數(shù)據(jù)庫(kù)重建就可以解決問(wèn)題,如下圖所示:
示例 5:
上面就是CentOS系統(tǒng)中RPM軟件包管理的介紹了,包括RPM軟件包的安裝、卸載、校檢、數(shù)據(jù)庫(kù)都做了詳細(xì)介紹,以便你對(duì)RPM軟件包的管理有更詳細(xì)的了解。
發(fā)表評(píng)論
共0條
評(píng)論就這些咯,讓大家也知道你的獨(dú)特見解
立即評(píng)論以上留言僅代表用戶個(gè)人觀點(diǎn),不代表系統(tǒng)之家立場(chǎng)