程序包管理之YUM解析

前言:

   yum是rpm的前端程序,用來解決軟件包相關依賴性,可以在多個庫之間定位軟件包,如果直接使用rpm直接安裝程序包也可以,但是需要自己手工解決程序包依賴性的問題,可能程序包的依賴性非常復雜,那么直接使用rpm安莊,就會非常麻煩,而使用YUM安裝就會自動解決依賴性的問題。大大簡化了安裝過程。 

YUM客戶端配置文件:

  /etc/yum.conf:為所有倉庫提供公共配置

  /etc/yum.repos.d/*.repo:為倉庫的指向提供配置

YUM的主配置文件:

blob.png

主配置文件含義:

1、cachedir:yum 緩存的目錄,yum在此存儲下載的rpm包和數據庫,一般是/var/cache/yum

2、keepcache=0:緩存是否保存,1保存,0不保存

3、debuglevel:除錯級別,0-10,默認是2

4、logfile:yum的日志文件,默認是/var/log/yum.log

5、exactarch:在更新的時候,是否允許更新不同版本的RPM包,不如是否在i386上更新i686的RPM包;

6、obsoletes=1:允許更新陳舊的RPM包;

7、gpgcheck=1:是否檢查GPG,一種秘鑰方式簽名

8、plugins=1:是否允許使用插件,默認是0不允許,但是我們一般會用yum-fastestmirror這個插件;

9、installonly_limit=5:允許保留多少個內核包;


倉庫指向的定義:

      [repositoryID]  (yum倉庫的ID)

      name=some name for this repository (yum倉庫的名稱) 

      baseurl=url://path/to/repository/ (repodata的位置,一般指向上一級目錄)

      enabled={1|0}  (1為啟用,0為關閉)

      gpgcheck={1|0}  (是否檢查gpgkey,1為檢查0為不檢查)

      gpgkey=URL     (gpgkey的路徑)

yum倉庫配置示例:

1、yum倉庫的配置文件位于/etc/yum.repos.d目錄下

blob.png

2、在該目錄下新建一個new.repo的文件,文件名可以任意起,但是需要以.repo來結尾,在文件里寫入yum倉庫的配置信息;

blob.png

      如此yum倉庫配置完成了,可以使用yum repolist命令查看yum倉庫

blob.png

yum list命令可以顯示所有的程序包:

凡是以@符號開頭的都是已經安裝上的程序包,以anaconda命名的都是在安裝操作系統時安裝的包

blob.png

   讓我們看看yum源里都有些什么內容,在這里我們修改一下yum源的地址,在本地鏡像里可以更清楚的知道源里所包含的內容:

blob.png

   從上面這幅圖里我們可以看到yum源里包含rpm包的目錄,repodata索引目錄,GPGKEY文件,這三者用于支撐yum的運行

   索引是通過計算rpm包的元數據而生成的,yum通過索引來做安裝、卸載、查詢rpm包的,如果缺少索引文件也就是repodata文件,yum就無法正常工作,接下來我們在額外的路徑下下載一些rpm包,手工生成repodata文件,并寫入yum倉庫的配置文件,該文件下只包含rpm包和repodata索引文件,看看是否能運行yum倉庫:

  

示例:

1、該目錄下只有四個rpm包:

blob.png

2、將rpm包移入新建文件夾Packages,并使用createrepo命令創建repodata索引文件

blob.png

3、修改yum配置文件,指向新的路徑

blob.png

4、yum list

blob.png

5、嘗試安裝varnish的rpm包

blob.png

安裝成功!我們自己手工制作的yum倉庫配置完成。

原創文章,作者:因為有你,如若轉載,請注明出處:http://www.www58058.com/39659

(0)
因為有你因為有你
上一篇 2016-08-24 21:22
下一篇 2016-08-24 21:22

相關推薦

  • 鏈接分析算法之:HillTop算法

       Hilltop算法是由Krishna Baharat 在2000年左右研究的,于2001年申請專利,但是有很多人以為Hilltop算法是由谷歌研究的。只不過是Krishna Baharat 后來加入了Google成為了一名核心工程師,然后授權給Google使用的。     &nbsp…

    大數據運維 2015-04-08
  • 訪問控制列表ACL使用說明

    一、什么是ACL ACL(Access Control List)可靈活地,更細粒度地定義訪問文件或目錄的權限。 二、為什么使用ACL Linux上文件系統的文件系統權限管理的對象分為三類:owner,group,other。這種分類非常簡單,如果我希望有一個用戶擁有不同于這三類對象的權限,或者再定義一個用戶組的權限,傳統的權限管理就不能實現,而ACL可以很…

    Linux干貨 2016-08-08
  • Http協議三次握手過程

    Http協議三次握手過程   TCP是主機對主機層的傳輸控制協議,提供可靠的連接服務,采用三次握手確認建立一個連接: 位碼即tcp標志位,有6種標示:SYN(synchronous建立聯機) ACK(acknowledgement 確認) PSH(push傳送) FIN(finish結束) RST(reset重置) URG(urgent緊…

    Linux干貨 2016-06-22
  • 交換分區創建和磁盤配額的使用

    一、交換分區的建立與啟用:     交換分區是作為內存的一個輔助分區,在內存吃緊時,交換分區會作為內存的一部分使用,但是效率比起內存來說會很低下,在一個硬盤分區時最好使用柱面較小的柱面作為交換分區,因為在機械硬盤轉速一定的情況下,越靠近外面的磁道,線速度越大,讀取到的扇區越多,一定程度上有利于提高性能   &…

    Linux干貨 2016-08-29
  • vim小結

    1. 簡介 Vim(Vi[Improved])編輯器是功能強大的跨平臺文本文件編輯工具,繼承自Unix系統的Vi編輯器,支持Linux/Mac OS X/Windows系統,利用它可以建立、修改文本文件。進入Vim編輯程序,可以在終端輸入下面的命令: $vim [filename] 其中filename是要編輯器的文件的路徑名。如果文件不存在,它將…

    Linux干貨 2016-08-12

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-26 14:06

    內容整體很完整,圖文結合,通過實際操作驗證了自己的想法,且總結成為經驗,這是個很好習慣,希望堅持下去哦。

欧美性久久久久