使用rmp實現yum工具的安裝

yum是幹什麼的

  使用redhat,fedora的linuxer肯定都爲rpm著名的dependency hell而頭疼(這也是所有基於rpm發行版都有的問題)。foo is needed by bar,bar is needed by foo。要裝卸個軟件,還得辛辛苦苦地梳理清楚所有依賴性問題,rpm的幾個搜索站點成了時常光顧的場所,如果不幸碰到循環依賴,那就只有乾瞪眼的分了。 有時加個--nodeps參數,倒是眼不見,心不煩,但這樣裝上的軟件,你能保證正常使用嗎,這樣卸載軟件,你能保證不影響其它軟件工作嗎,恐怕誰也不能 給出肯定的答案。每到這時,帽子們只有看着debian的 apt暗自羨慕了。好在,這些都已經成爲過去時了。基於rpm的發行版現在也有了像apt那樣自 動解決依賴關係的包管理工具了。其中一個著名的就是apt4rpm,這基本上是debian系統apt的在rpm發行版的移植。但是使用Redhat和 Fedora的linuxer你們知道嗎,還有一個與apt功能類似的rpm包管理系統,那就是yum。Fedora系統已經自帶,Redhat也有相應 的rpm下載。與apt相比,yum的功能一點也不弱,甚至還有許多勝過apt 之處。比如說,yum是Fedora系統自帶的,因此它能使用fedora官方的軟件源,完成各種官方發佈>的各種升級。對於第三方軟件源的支持,yum也 不差,大多數支持apt的repository注,也能支持yum,比如說freshrpms,fedora.us,livna等等。此外yum有一個比較 詳細的log,可以查看何時升級安裝了什麼軟件包等。yum的代碼較apt更爲精簡等。

  一. yum是什麼

  yum = Yellow dog Updater, Modified主要功能是更方便的添加/刪除/更新RPM包.它能自動解決包的倚賴性問題.

  它能便於管理大量系統的更新問題

  注:爲什麼要使用yum而不用apt,最簡單的原因,Fedora自帶

  二. 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

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