中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

程序包管理器rpm和yum的使用-創(chuàng)新互聯(lián)

這篇文章主要為大家詳細(xì)介紹了程序包管理器rpm和yum的使用,文中示例代碼介紹的非常詳細(xì),圖文詳解容易學(xué)習(xí),非常適合初學(xué)者入門,感興趣的小伙伴們可以參考一下。

創(chuàng)新互聯(lián)基于成都重慶香港及美國等地區(qū)分布式IDC機(jī)房數(shù)據(jù)中心構(gòu)建的電信大帶寬,聯(lián)通大帶寬,移動大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業(yè)四川雅安電信機(jī)房報價,主機(jī)托管價格性價比高,為金融證券行業(yè)服務(wù)器托管,ai人工智能服務(wù)器托管提供bgp線路100M獨享,G口帶寬及機(jī)柜租用的專業(yè)成都idc公司。

在早期我們在Linux上安裝程序時,都采用的源代碼來安裝應(yīng)用程序,這就意味著我們每次都要經(jīng)過預(yù)處理,編譯,匯編,鏈接最后生成可執(zhí)行的二進(jìn)制文件;這樣的操作太過繁瑣,為簡化安裝步驟,便于廣大用戶的安裝部署程序,程序提供商就在特定的系統(tǒng)上面編譯好相關(guān)程序的安裝文件并進(jìn)行打包,提供給大家下載,而對這些程序包進(jìn)行管理的就是程序包管理器;

 不同Linux發(fā)行版本,就有不同的程序包管理器;在這里列舉一些常用的程序包管理器;

 在Debian中dpkg工具來管理所有.deb后綴名的包文件;Redhat中就使用最為經(jīng)典的rpm程序包管理器,rpm是Linux的程序包管理器的行業(yè)標(biāo)準(zhǔn),使用perl語言編寫,在此基礎(chǔ)上有人用C語言對其進(jìn)行重新編寫,提高了其運(yùn)行效率;dpkg最早是由 Debian Linux 社群所開發(fā)出來的, 只要是衍生亍 Debian 的其他 Linux distributions 大多使用 dpkg 這個機(jī)制來管理軟件的, 包括B2D, Ubuntu 等等,其前端工具有apt-get;

 在這里給大家主要介紹關(guān)于rpm程序包管理器的相關(guān)功能;

 首先必須要清楚關(guān)于rpm的源代碼包以及二進(jìn)制包的命名規(guī)則,能夠熟悉其中所給予的信息;

 源代碼包:software_name-VERSION.src.rpm

 二進(jìn)制包:software_name-VERSION-[release].[os].arch.rpm

 software_name:軟件名;

 VERSION:版本號,分為主版本號major,次版本號minor以及發(fā)行版本號release

 [os]:所支持的操作系統(tǒng)版本信息,el6,el7,suse11,fedora22...

 arch:硬件平臺類型,i386,i686,x64,ppc,sparc,noarch

 rpm在制作時,制作者通常會制作主包和次包兩種,二者存在依賴關(guān)系,即先安裝某部分程序才能按照他所依賴的部分進(jìn)行接下去的安裝,否則,安裝無法進(jìn)行;

 主程序包:

 software_name-VERSION-[release].[os].arch.rpm

 附屬功能包:

 software_name-function-VERSION-[release].[os].arch.rpm

 rpm命令行工具:

 ①可以將編譯好的程序進(jìn)行打包,封裝在一起;

 ②可以進(jìn)行安裝,卸載,查看,升級,校驗及數(shù)據(jù)庫管理功能;

 在使用rpm程序包進(jìn)行安裝時,rpm程序管理器會自動生成程序的文件,文件清單(保存文件名和依賴  關(guān)系)以及在安裝程序所需要的一些固定的腳本內(nèi)容如安裝前腳本preinstall,安裝后腳本

 postinstall,卸載前腳本preunistall,卸載后腳本postunistall等;還需要安裝rpm數(shù)據(jù)庫,對所  安裝的程序進(jìn)行比對,看是否版本為最新;該數(shù)據(jù)庫路徑為/var/lib/rpm;在進(jìn)行安裝,卸載等操作  時,要在光盤掛載點下的Packets下進(jìn)行;

 rpm命令:

 -v:顯示安裝例程的詳細(xì)信息;

 -vv:顯示非常詳細(xì)的安裝信息;

 安裝:

 rpm {-i|--install} [install-options] PACKAGE_FILE ...

 install-option:

   -h,--hash:用50個#來表示安裝進(jìn)度;

   --test:并不是真正的安裝軟件包,僅僅測試在安裝時能否正常完成,如果失敗,則說出原        因;

   --nodeps:忽略因為依賴關(guān)系導(dǎo)致的安裝錯誤;(不建議使用)

   --replacefiles:在安裝軟件包時,軟件包中的文件會直接將原來安裝的文件替換;

   --replacekgs:不卸載軟件包而重新安裝;

   --noscripts:不運(yùn)行任何腳本;

   --nopre:不運(yùn)行安裝前腳本;

   --nopost:不運(yùn)行安裝后腳本;

   --nosignature:不去考慮軟件包的來源是否合法;

   --nodigest:不考慮軟件包是否完整;

   常見組合選項:-ivh

 例 安裝tree命令 ######即為-h選項安裝進(jìn)度,tree-1.6.0-10.el7.x86_64.rpm即為-v選項的安裝例   程信息;

  程序包管理器rpm和yum的使用

 使用--test進(jìn)行測試操作,對安裝進(jìn)行測試,看是否能行,并不進(jìn)行實質(zhì)性安裝;

  程序包管理器rpm和yum的使用

 升級:

 升級安裝有兩種方式:

 rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...

 如果事先未安裝程序,則直接安裝最新版本的程序,若已經(jīng)安裝程序,就在該程序基礎(chǔ)上進(jìn)行升級安  裝;

 rpm {-F|--freshen} [install-options] PACKAGE_FILE ...

 僅僅只能對已經(jīng)安裝的低版本的程序包進(jìn)行升級安裝;

 注意:為了保證系統(tǒng)的正常運(yùn)行最好不要對內(nèi)核進(jìn)行升級;

 常用選項與安裝相同:

   -h,--hash:用50個#來表示安裝進(jìn)度;

   --test:并不是真正的安裝軟件包,僅僅測試在安裝時能否正常完成,如果失敗,則說出原        因;

   --nodeps:忽略因為依賴關(guān)系導(dǎo)致的安裝錯誤;(不建議使用)

   --replacefiles:在安裝軟件包時,軟件包中的文件會直接將原來安裝的文件替換;

   --replacekgs:不卸載軟件包而重新安裝;

   --noscripts:不運(yùn)行任何腳本;

   --nopre:不運(yùn)行安裝前腳本;

   --nopost:不運(yùn)行安裝后腳本;

   --nosignature:不去考慮軟件包的來源是否合法;

   --nodigest:不考慮軟件包是否完整;

   --oldpackage:降級安裝,用老版本的程序包替換新版本的程序包;

 卸載:

 rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test]    PACKAGE_NAME(軟件名) ...

 常用選項:

 --allmatches:卸載時所有匹配指定名稱的程序包的各個版本;

 --test:測試卸載;

 --nodeps:卸載時忽略一欄關(guān)系,不建議使用;

 例

 卸載操作較為簡單,直接命令+選項+卸載的軟件名;

  程序包管理器rpm和yum的使用

 查詢:

 安裝之前需要查詢,卸載之前需要查詢,做任何操作哦之前都要進(jìn)行查詢操作;

 rpm {-q|--query} [select-options] [query-options](直接給出程序包名)

 select options:

 -a,--all:查詢所有已經(jīng)安裝的程序包信息;

 例 查找相關(guān)的軟件包

 程序包管理器rpm和yum的使用

 -f,--file FILE:查找指定文件由那個程序包提供的;

 --whatprovides CAPABILITY:查詢指定的CAPABILITY是有哪個程序包提供

 例 查找文件/bin/chown由哪個程序包提供

  程序包管理器rpm和yum的使用

 -p,--package PACKAGE_FILE(程序包文件名稱):

 對還沒有安裝的程序包文件執(zhí)行查詢操作;跟p配合的必須是程序包文件

 [root@localhost wjq]# rpm -qpl /media/guangpan/Packages/tree-1.6.0-10.el7.x86_64.rpm

 query options:

 --changelog:查詢rpm程序包的changelog

 -c,--configfiles:查詢指定程序包中有哪些配置信息;

 -d,--docfiles:查詢指定程序包中有哪些文檔文件;

 例 查看tree程序包中有哪些文檔文件

  程序包管理器rpm和yum的使用

 -i,--info:查詢程序包相關(guān)信息,包括版本號,發(fā)行號,大?。?/p>

 例 查看tree程序相關(guān)信息

  程序包管理器rpm和yum的使用

 -l,--list:列表顯示程序生成哪些文件;

 例

  程序包管理器rpm和yum的使用

 --provides:列出制定程序包提供的所有的CAPABILITY;

 -R,--requires:查詢程序包的依賴關(guān)系

 --scripts:查看程序包所攜帶的腳本的內(nèi)容

 校驗:用于檢查包安裝生成的文件屬性是否發(fā)生變化

 rpm {-V|--verify} [select-options] [verify-options]

 select options與查詢的select options一樣;

 常用選項:

 -V :后面加的是程序名稱,若該程序?qū)儆械奈募l(fā)生改變就會顯示;

 例

  程序包管理器rpm和yum的使用

 -Va :顯示目前系統(tǒng)上面所有可能被修改過的文件;

 例

  程序包管理器rpm和yum的使用

 -Vp :后面加的是文件名,顯示該程序內(nèi)可能被更改過的文件;

 -Vf :后面加的是文件名,顯示某個文件是否被修改過。

 對應(yīng)屬性位說明:只有在對應(yīng)的屬性為發(fā)生改變后,屬性才會顯示;

    S file Size differs 表示文件大小發(fā)生改變

    M Mode differs (includes permissions and file type)  文件的權(quán)限或類型被修改

    5 digest (formerly MD5 sum) differs  文件內(nèi)容發(fā)生改變

    D Device major/minor number mismatch 主設(shè)備號、次設(shè)備號發(fā)生改變

    L readLink(2) path mismatch  路徑改變

    U User ownership differs  屬主發(fā)生改變

    G Group ownership differs  屬組發(fā)生改變

    T mTime differs   文件的修改時間發(fā)生改變

    P caPabilities differ 包的能力發(fā)生改變

  數(shù)據(jù)庫管理:數(shù)據(jù)庫路徑為/var/lib/rpm若該路徑下的數(shù)據(jù)遭到破壞則系統(tǒng)無法知道有哪些軟件在       系統(tǒng)中,那些軟件的詳細(xì)信息都無法顯示;

  rpm數(shù)據(jù)庫管理主要分為初始化與重建兩個部分,初始化,若已安裝數(shù)據(jù)庫則初始化結(jié)果不變,若   未安裝數(shù)據(jù)庫,則對數(shù)據(jù)庫進(jìn)行安裝,重建就是在原有數(shù)據(jù)庫的基礎(chǔ)上進(jìn)行覆蓋安裝操作;

  rpm {--initdb|--rebuilddb} --dbpath /PATH/TO/FILE

  --initdb:初始化數(shù)據(jù)庫;

  --rebuilddb:重建數(shù)據(jù)庫;

 yum程序包管理器:

 yum(全稱Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE中的Shell前端軟件包管理器?;禦PM包管理,能夠從指定的服務(wù)器自動下載RPM包并且安裝,可以自動處理依賴性關(guān)系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。yum提供了查找、安裝、刪除某一個、一組甚至全部軟件包的命令,而且命令簡潔而又好記。yum是客戶機(jī)服務(wù)器模式,服務(wù)器也稱為軟件倉庫,存儲著許多的軟件包以供安裝;客戶端是用來指定服務(wù)器以及程序包的路徑喝一些必要的控制操作;

 yum的主配置文件/etc/yum.conf

 該文件一般情況下是不修改的,只提供yum軟件包的公共配置信息;

 yum的次配置文件/etc/yum.repos.d/*.repo

 在yum.repos.d目錄下創(chuàng)建以repo為后綴的文本文件,每個文件可以配置指向多個軟件倉庫;yum命令在安裝或更新時,通過查找這些配置文件所指向的路徑,得到多個軟件倉庫,從這些軟件倉庫中得到最新版本進(jìn)行安裝或更新;

 在/etc/yum.repos.d下創(chuàng)建的文本文件中的格式:

 [repoid]

 name=

 baseurl=schema://hostname/PATH/TO/REPODATA  (hostname可省略不寫)

 schema:

  http,ftp,nfs:網(wǎng)絡(luò)服務(wù)器指向

  file:本地服務(wù)器指向

 enabled={0|1},0表示禁用此倉庫指向,1表示啟用,如果沒有enable語句,默認(rèn)為啟動狀態(tài);

 gpgcheck={0|1}:0表示不進(jìn)行程序包認(rèn)證,1表示認(rèn)證,如果為1,需要指定認(rèn)證所需要的公鑰文   件,需要使用gpgkey語句;

 gpgkey=schema://hostname//PATH/TO/PUBLIC_KEY_FILE 軟件包公鑰,當(dāng)為本地服務(wù)器指向時可省略公鑰路徑;

 例

  程序包管理器rpm和yum的使用

 注意:同一個文本文件下的不同配置信息之間使用[repoid]進(jìn)行隔離,所有配置信息生效的范圍是從一個[]開始到下一個[]結(jié)束;

 主配置文件解析:

  程序包管理器rpm和yum的使用

 cachedir:yum緩存的目錄,yum在此存儲下載的rpm包和數(shù)據(jù)庫,一般是/var/cache/yum。

 debuglevel:除錯級別,0──10,默認(rèn)是2

 logfile:yum的日志文件,默認(rèn)是/var/log/yum.log。

 exactarch,有兩個選項1和0,代表是否只升級和你安裝軟件包cpu體系一致的包,如果設(shè)為1,則如你  安裝了一個i386的rpm,則yum不會用686的包來升級。

 gpgchkeck= 有1和0兩個選擇,分別代表是否是否進(jìn)行g(shù)pg校驗,如果沒有這一項,默認(rèn)好像也是檢查  的。

 自定義配置軟件倉庫

 1.創(chuàng)建一個目錄將需要的程序包放入目錄中;

 2.使用createrepo命令創(chuàng)建倉庫;產(chǎn)生repodata;

 3.在/etc/yum.repos.d下創(chuàng)建一個關(guān)于該軟件倉庫的配置文件,以repo為后綴;

 yum命令(該命令的使用要在聯(lián)網(wǎng)的情況下):

 yum [options] [command] [package ...]

 option:

 -q:安靜模式,使yum沒有輸出任何的信息,不顯示安裝過程;

 -y:yum命令下的所有交互操作yes or no全部以yes表示;

 

 yum安裝:

 yum install:全部安裝

 install package1 [package2] [...]:指定程序包安裝

  程序包管理器rpm和yum的使用

 yum卸載:

 yum remove|erase package1 [package2] [...]

  程序包管理器rpm和yum的使用

 yum更新:

 update [package1] [package2] [...]:對所更新的程序包進(jìn)行最新更新

 update-to [package1] [package2] [...]:指定目的版本號的更新;

 yum list [...]查詢操作,可查看當(dāng)前系統(tǒng)下的安裝的,未安裝但可用的程序包;

 查看所有程序包:

 yum list all

 查看所有已安裝的程序包:

 yum list installed

 顯示所有尚未安裝但可以安裝的程序包:

 yum list available

 顯示最近安裝的程序包:

 yum list recent

 顯示所有可以升級更新的程序包:

 yum list updates

 yum清除緩存:

 清理本地緩存信息;

 clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

 清除緩存目錄下的軟件包

 yum clean packages

 程序包組的管理命令:

 groups [...]

 組安裝:

 groupinstall group1 [group2] [...]等于groups install

  程序包管理器rpm和yum的使用

 組更新:

 groupupdate group1 [group2] [...]等于groups update

 顯示當(dāng)前組列表:

 grouplist [hidden] [groupwildcard] [...]

  程序包管理器rpm和yum的使用

 卸載安裝的組:

 groupremove group1 [group2] [...]

 程序包管理器rpm和yum的使用

 顯示組信息:

 groupinfo group1 [...]

 程序包管理器rpm和yum的使用

 根據(jù)關(guān)鍵字進(jìn)行匹配,默認(rèn)情況下,搜索程序包名稱及匯總信息,模糊搜索;

 search string1 [string2] [...]

 yum重新安裝

 reinstall package1 [package2] [...]

 顯示每個程序包所有的依賴關(guān)系

 deplist package1 [package2] [...]

以上就是程序包管理器rpm和yum的使用方法介紹,詳細(xì)使用情況還得要大家自己使用過才能知道具體要領(lǐng)。如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)站欄目:程序包管理器rpm和yum的使用-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://m.rwnh.cn/article10/dpeddo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、小程序開發(fā)、虛擬主機(jī)網(wǎng)站策劃、App開發(fā)、云服務(wù)器

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司
营山县| 东辽县| 福安市| 谢通门县| 昭平县| 南丰县| 凤阳县| 福海县| 平凉市| 南康市| 克拉玛依市| 阿拉善盟| 渭南市| 宁津县| 通州区| 瑞昌市| 内丘县| 响水县| 望谟县| 台前县| 井冈山市| 菏泽市| 邵东县| 甘孜县| 永福县| 盐亭县| 巨野县| 太湖县| 耿马| 报价| 旬邑县| 香格里拉县| 台江县| 屯留县| 望谟县| 巢湖市| 离岛区| 泾源县| 禄劝| 察雅县| 凌云县|