yum

yum程序包管理

Yum是RPM前端軟件包管理器。基於RPM包管理,能夠從指定的服務器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟件包。 我們可以使用yum命令對程序包執行安裝、卸載、升級、查詢的工作。 

yum的配置文件有兩個     

主配置文件:        

 /etc/yum.conf爲個倉庫指向提供公共默認規則,比如定義調用倉庫資源時默認是不是要檢測程序包合法性的gpgcheck。            

各個分倉庫文件的定義:           

分倉庫一般是在/etc/yum.repos.d/*.repo中定義的。每個分倉庫文件必須用.repo命名才能生效,且每個文件中可以定義多個庫指向。          

文件中通常需要定義以下幾項內容:         

 [repositoryid]:ID唯一標識此分庫的指向,必須是整個單詞,不能與別的庫相同;          

name=描述信息         

mirrorlist=url指向倉庫列表

baseurl=url指向倉庫路徑      

url分爲:                  

本地:file///生成了repodata目錄倉庫;                  

ftp路徑:ftp://生成了repodata目錄倉庫;                  

http路徑:http://生成了repodata目錄的倉庫;          

gpgcheck={1|0}1表示啓用檢測,0表示關閉          

enabled={1|0}1表示啓用該分庫,0表示關閉     

由於使用yum命令必須有可用的倉庫,所以我們必須創建一個本地庫     

1.我們建立一個http指向的本地倉庫,首先要開啓httpd服務(如果無法開啓則需要安裝httpd包),還要關閉防火牆service iptables stop;      

2.我們使用cp命令到掛載的光盤中下載一些程序包到/var/www/html/xen4中,然後使用createrepo命令在此目錄下創建repodata(此命令需要提前安裝createrepo程序包)           

3.cd/etc/yum.repos.d/下創建一個倉庫配置文件      

4.使用yum clean命令清理緩存,使用yum makecache命令創建新緩存,使用yum repolist查看可以使用的倉庫            

我們已經創建了一個包含許多PHP程序包的本地倉庫,使用http可以訪問,下面我們介紹一下yum對倉庫內程序包的管理。           

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

可用選項:      -

y: 自動回答爲“yes”      

--disablerepo=: 臨時禁用在配置文件中配置並啓用的某repository;      

--enablerepo=:臨時啓用指定的某repo;      

--nogpgcheck: 禁止做包校驗;  

一、查看所有以創建的倉庫配置文件.repo     yum listrepo 

二、清理緩存文件     yum clean all 

三、創建新的緩存     yum makecache 

四、程序包查找     

yum list [all | glob_exp1] [glob_exp2] [...]     查找所有的程序包文件,後面可以使用glob表達式給定查看條件     

yum list {available|updates|installed|extras|obsoletes} [glob_exp1] [...]      查找 可用的/可升級的/已安裝的/更新的/過時的程序包     

yum grouplist [hidden] [groupwildcard] [...]     查找包組文件 

五、程序包安裝     

yum install package1 [package2] [...]      

注意只需要提供包名;如果某包有在不同倉庫中有多個不同版本,默認會安裝最新版本;如果要安裝指定版本:install PACKAGE-VERSION ...      

重新安裝(覆蓋安裝)     yum reinstall package1 [package2] [...] 

程序包升級     update [package1] [package2] [...]     

程序包降級:      downgrade package1 [package2] [...]     

檢查有哪些升級可用:      check-update 

七、程序包卸載     yum remove|erase package      

所有依賴於此程序包的其他程序包都會被卸載  

八、程序包信息查詢     

查詢程序的相關簡要信息:info PACKAGE ...      

在包名和sumary信息中搜索指定的關鍵字:search KEYWORD ...     

查詢指定文件由哪個程序包安裝生成:provides|whatprovides /PATH/TO/SOMEFILE  

九、安裝或升級本地程序包         

localinstall rpmfile1 [rpmfile2] [...]      用於安裝倉庫中並不存在的程序包文件,這些程序包有可能又依賴於倉庫中的某些程序包;我們可以從其他途徑獲取一些程序包下載到本地目錄,使用此命令安裝。      

localupdate rpmfile1 [rpmfile2] [...]         用本地下載的程序包對已安裝的一些包進行升級  十、包組管理:      

列出所有包組:grouplist      

顯示指定包組詳情:groupinfo group1 [...]         

安裝:groupinstall group1 [group2] [...]      

卸載:groupremove group1 [group2] [...]      

升級:groupupdate group1 [group2] [...]      

Note: 可直接用installremoveupdate來管理包組:       

@GROUP_NAME       例如:# yum install @"Server Platform Development"

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章