CentOS Yum 命令詳解

總所周知,Redhat和Fedora的軟件安裝命令是rpm,可是用rpm安 裝軟件最大的麻煩就是須要手動尋找安裝該軟件所須要的一系列依賴關係,超級麻煩不說,要是軟件不用了須要卸載的話因爲卸載掉了某個依賴關係而致使其餘的軟 件不能用是很是惱人的。使人高興的是,Fedora終於推出了相似於ubuntu中的apt的命令yum,令Fedora的軟件安裝變得簡單容易。
yum有一下特色:
*能夠同時配置多個資源庫(Repository)
*簡潔的配置文件(/etc/yum.conf)
*自動解決增長或刪除rpm包時遇到的倚賴性問題
*使用方便
*保持與RPM數據庫的一致性
python

yum,是Yellow dog Updater Modified的簡稱,起初是由yellow dog這一發行版的開發者Terra Soft研發,用python寫成,那時還叫作yup(yellow dog updater),後經杜克大學的Linux@Duke開發團隊進行改進,遂有此名。yum的宗旨是自動化地升級,安裝/移除rpm包,收集rpm包的相 關信息,檢查依賴性並自動提示用戶解決。yum的關鍵之處是要有可靠的repository,顧名思義,這是軟件的倉庫,它能夠是http或ftp站點, 也能夠是本地軟件池,但必須包含rpm的header, header包括了rpm包的各類信息,包括描述,功能,提供的文件,依賴性等.正是收集了這些 header並加以分析,才能自動化地完成餘下的任務。 linux

1.yum的一切配置信息都儲存在一個叫yum.conf的配置文件中,一般位於/etc目 錄下,這是整個yum系統的重中之重,我在的F7中查看了這一文件,你們一塊兒來看下: 數據庫

[hanlong@wh_eric F7經常使用文檔]$ sudo more /etc/yum.conf
[main]
cachedir=/var/cache/yum
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
metadata_expire=1800
# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d
ubuntu

下面簡單的對這一文件做簡要的說明:
cachedir:yum緩存的目錄,yum在此存儲下載的rpm包和數據庫,通常是/var/cache/yum。
debuglevel:除錯級別,0──10,默認是2
logfile:yum的日誌文件,默認是/var/log/yum.log。
exactarch,有兩個選項1和0,表明是否只升級和你安裝軟件包cpu體系一致的包,若是設爲1,則如你安裝了一個i386的rpm,則yum不會用686的包來升級。
gpgchkeck= 有1和0兩個選擇,分別表明是不是否進行gpg校驗,若是沒有這一項,默認好像也是檢查的。 緩存

2.好了,接下來就是yum的使用了,首先用yum來升級軟件,yum的操做大都須有超級用戶的權限,固然能夠用sudo。
yum update,這一步是必須的,yum會從服務器的header目錄下載rpm的header,放在本地的緩存中,這可能會花費必定的時間,但比起yum 給咱們帶來方便,這些時間的花費又算的了什麼呢?header下載完畢,yum會判斷是否有可更新的軟件包,若是有,它會詢問你的意見,是否更新,仍是說 y吧,把系統始終up to date老是不錯的,這時yum開始下載軟件包並使用調用rpm安裝,這可能要必定時間,取決於要更新軟件的數目和網絡情況,萬一網絡斷了,也不要緊,再 進行一次就能夠了。升級完畢,之後天天只要使用yum check-update檢查一下有無跟新,若是有,就用yum update進行跟新,時刻保持系統爲最新,堵住一切發現的漏洞。用yum update packagename 對某個單獨包進行升級。
如今簡單的把yum軟件升級的一些命令羅列一下: 安全

(更新:我在安裝wine的時候是用rpm一個一個安裝的,先安裝以來關係,而後在安裝wine的主包,可是剛剛在論壇上發現來一個好的帖子,就yum的本地安裝。參數是-localinstall
$yum localinstall wine-*
這樣的話,yum會自動安裝全部的依賴關係,而不用rpm一個一個的安裝了,省了好多工做。
還有一個與他相似的參數:
$yum localupdate wine-*
若是有wine的新版本,並且你也下載到來本地,就能夠這樣本地更新wine了。)
服務器

1.列出全部可更新的軟件清單 網絡

命令:yum check-update ide

2.安裝全部更新軟件 網站

命令:yum update

3.僅安裝指定的軟件

命令:yum install

4.僅更新指定的軟件

命令:yum update

5.列出全部可安裝的軟件清單

命令:yum list

3.使用yum安裝和卸載軟件,有個前提是yum安裝的軟件包都是rpm格式的。
安裝的命令是,yum install xxx,yum會查詢數據庫,有無這一軟件包,若是有,則檢查其依賴衝突關係,若是沒有依賴衝突,那麼最好,下載安裝;若是有,則會給出提示,詢問是否要同時安裝依賴,或刪除衝突的包,你能夠本身做出判斷
刪除的命令是,yum remove xxx,同安裝同樣,yum也會查詢數據庫,給出解決依賴關係的提示。

1.用YUM安裝軟件包

命令:yum install

2.用YUM刪除軟件包

命令:yum remove

4.用yum查詢想安裝的軟件
咱們常會碰到這樣的狀況,想要安裝一個軟件,只知道它和某方面有關,但又不能確切知道它的名字。這時yum的查詢功能就起做用了。你能夠用 yum search keyword這樣的命令來進行搜索,好比咱們要則安裝一個Instant Messenger,但又不知到底有哪些,這時不妨用 yum search messenger這樣的指令進行搜索,yum會搜索全部可用rpm的描述,列出全部描述中和messeger有關的rpm包,因而咱們可能獲得 gaim,kopete等等,並從中選擇。
有時咱們還會碰到安裝了一個包,但又不知道其用途,咱們能夠用yum info packagename這個指令來獲取信息。

1.使用YUM查找軟件包
命令:yum search 

2.列出全部可安裝的軟件包
命令:yum list
3.列出全部可更新的軟件包
命令:yum list updates
4.列出全部已安裝的軟件包
命令:yum list installed
5.列出全部已安裝但不在 Yum Repository 內的軟件包
命令:yum list extras
6.列出所指定的軟件包
命令:yum list

7.使用YUM獲取軟件包信息
命令:yum info

8.列出全部軟件包的信息
命令:yum info
9.列出全部可更新的軟件包信息
命令:yum info updates
10.列出全部已安裝的軟件包信息
命令:yum info installed

11.列出全部已安裝但不在 Yum Repository 內的軟件包信息
命令:yum info extras
12.列出軟件包提供哪些文件
命令:yum provides

5.清除YUM緩存

yum 會把下載的軟件包和header存儲在cache中,而不會自動刪除。若是咱們以爲它們佔用了磁盤空間,可使用yum clean指令進行清除,更精確的用法是yum clean headers清除header,yum clean packages清除下載的rpm包,yum clean all 清除全部

1.清除緩存目錄(/var/cache/yum)下的軟件包

命令:yum clean packages

2.清除緩存目錄(/var/cache/yum)下的 headers

命令:yum clean headers

3.清除緩存目錄(/var/cache/yum)下舊的 headers

命令:yum clean oldheaders

4.清除緩存目錄(/var/cache/yum)下的軟件包及舊的headers

命令:yum clean, yum clean all (= yum clean packages; yum clean oldheaders)

以上全部命令參數的使用均可以用man來查看:

[hanlong@wh_eric F7經常使用文檔]$ man yum

 

FROM:http://han-long.cn/blog/archives/45

 

yum特色
    *能夠同時配置多個資源庫(Repository)
    *簡潔的配置文件(/etc/yum.conf)
    *自動解決增長或刪除rpm包時遇到的倚賴性問題
    *使用方便
    *保持與RPM數據庫的一致性
yum安裝 ,哈哈,Fedora自帶哦!
#rpm -ivh yum-2.0.4-2.noarch.rpm

四. yum配置
注:修改和增長配置文件中的資源庫,加快下載速度和擁有更多可更新的rpm包
將/etc/yum.conf的內容所有替換爲
[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=fedora-release
tolerant=1
exactarch=1

[fedora-us-1]
name=Fedora Core 1 -- Fedora US mirror
baseurl=ftp://mirrors.kernel.org/fedora.us/fedora/fedora/1/i386/yum/os

[fedora-us-1-updates]
name=Fedora Core 1 updates -- Fedora US mirror
baseurl=ftp://mirrors.kernel.org/fedora.us/fedora/fedora/1/i386/yum/updates

[fedora-us-1-stable]
name=Fedora Linux (stable) for Fedora Core 1 -- Fedora US mirror
baseurl=ftp://mirrors.kernel.org/fedora.us/fedora/fedora/1/i386/yum/stable

[freshrpms]
name=Fedora Linux $releasever - $basearch - freshrpms
baseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/freshrpms

五. yum應用
注:當第一次使用yum或yum資源庫有更新時,yum會自動下載全部所需的headers放置於/var/cache/yum目錄下,所需時間可能較長.

檢查有哪些可更新的rpm包
#yum check-update

安裝rpm包,使xmms能夠播放mp3
#yum install xmms-mp3

安裝mplayer,同時自動安裝相關的軟件
#yum install mplayer

刪除licq包,同時刪除與該包有倚賴性的包
#yum remove licq
注:同時會提示刪除licq-gnome,licq-qt,licq-text,很是方便

系統更新(更新全部能夠升級的rpm包,包括kernel)
#yum -y update

天天按期執行系統更新
#chkconfig yum on

#service yum start

六. yum指令詳解
*rpm包的更新

檢查可更新的rpm包
#yum check-update

更新全部的rpm包
#yum update

更新指定的rpm包,如更新kernel和kernel source
#yum update kernel kernel-source

大規模的版本升級,與yum update不一樣的是,連舊的淘汰的包也升級
#yum upgrade

*rpm包的安裝和刪除

安裝rpm包,如xmms-mp3
#yum install xmms-mp3

刪除rpm包,包括與該包有倚賴性的包
#yum remove licq
注:同時會提示刪除licq-gnome,licq-qt,licq-text

*yum暫存(/var/cache/yum/)的相關參數
清除暫存中rpm包文件
#yum clean packages

清除暫存中rpm頭文件
#yum clean headers

清除暫存中舊的rpm頭文件
#yum clean oldheaders

清除暫存中舊的rpm頭文件和包文件
#yum clean 或#yum clean all
注:至關於yum clean packages + yum clean oldheaders

*rpm包列表

列出資源庫中全部能夠安裝或更新的rpm包
#yum list

列出資源庫中特定的能夠安裝或更新以及已經安裝的rpm包
#yum list mozilla
#yum list mozilla*
注:能夠在rpm包名中使用匹配符,如列出全部以mozilla開頭的rpm包

列出資源庫中全部能夠更新的rpm包
#yum list updates

列出已經安裝的全部的rpm包
#yum list installed

列出已經安裝的可是不包含在資源庫中的rpm包
#yum list extras
注:經過其它網站下載安裝的rpm包

*rpm包信息顯示(info參數同list)

列出資源庫中全部能夠安裝或更新的rpm包的信息
#yum info

列出資源庫中特定的能夠安裝或更新以及已經安裝的rpm包的信息
#yum info mozilla
#yum info mozilla*
注:能夠在rpm包名中使用匹配符,如列出全部以mozilla開頭的rpm包的信息

列出資源庫中全部能夠更新的rpm包的信息
#yum info updates

列出已經安裝的全部的rpm包的信息
#yum info installed

列出已經安裝的可是不包含在資源庫中的rpm包的信息
#yum info extras
注:經過其它網站下載安裝的rpm包的信息

*搜索rpm包
搜索匹配特定字符的rpm包
#yum search mozilla
注:在rpm包名,包描述等中搜索

搜索有包含特定文件名的rpm包
#yum provides realplay

七. 安全的更新freshrpms.net的rpm包
安裝freshrpms.net的GPG key
#rpm --import  http://freshrpms.net/packages/RPM-GPG-KEY.txt

編輯/etc/yum.conf,增長如下信息到尾部
[freshrpms]
name=Fedora Linux $releasever - $basearch - freshrpms
baseurl=http://ayo.freshrpms.net/fedora/linux/$releasever/$basearch/freshrpms
gpgcheck=1

注:
檢查GPG Key
# rpm -qa gpg-pubkey*

顯示Key信息
#rpm -qi gpg-pubkey-e42d547b-3960bdf1

刪除Key
#rpm -e gpg-pubkey-e42d547b-3960bdf1
相關文章
相關標籤/搜索