Yum
系統更新
yum repolist enabled
查詢所有可更新的套件
yum list updates
更新所有套件
yum update --disablerepo=epel
停用有問題的 yum-updatesd,並以下列方式取代
停用 yum-updatesd
service yum-updatesd stop
chkconfig yum-updatesd off
新增 /etc/cron.daily/yum.cron
#!/bin/sh
/usr/bin/yum -R 120 -e 0 -d 0 -y update yum
/usr/bin/yum -R 10 -e 0 -d 0 -y update #如果不想讓系統自動更新所有套件,可註解這行。
chmod 0755 /etc/cron.daily/yum.cron
各種舊版本的套件庫位址
http://vault.centos.org/
如果想將多個 CD 的 ISO 檔合併成一個 DVD ISO,可以使用附件區的 mkdvdiso.sh,這只能使用在 RedHat/CentOS 版本,使用方法如下:
yum install anaconda-runtime mkisofs
./mkdvdiso.sh cd/ /tmp/CentOS-5.5-i386-bin-DVD.iso
TIPs:
所有 CD ISO 檔放在 cd/ 目錄內
必須關閉 SELinux
輸出檔路徑必須是絕對路徑
清除最新套件庫清單及暫存的套件檔
yum clean all
搜尋特定檔案名稱屬於哪個套件
搜尋 libstdc++.so.6
yum whatprovides "*/libstdc++.so.6"
列出指定套件的相依性
yum deplist <package-name>
repoquery --requires <package-name>
下載 RPM 套件
yum -y install yum-utils.noarch
yumdownloader <package-name>
; Extract downloaded RPM
rpm2cpio dekiwiki-10.0.1-3.1.noarch.rpm | cpio -idmv
yum -y install --downloadonly --downloaddir=/tmp/packages NetworkManager
安裝時臨時啟用一個不常用的套件庫位址
yum --enablerepo=elrepo-kernel install kernel-ml kernel-ml-devel
使用光碟 ISO方式來升級系統
# vi /etc/yum.repo.d/CentOS-Media.repo
[c6-local]
name=CentOS-$releasever - Media
baseurl=file:///mnt/iso/
gpgcheck=0
enabled=0
NOTE: enabled=0,不是 1。將 DVD 掛載為 /mnt/iso。
# yum --disablerepo=\* --enablerepo=c6-local upgrade
安裝本機端的 RPM 套件
yum --nogpgcheck install htop-1.0.2-1.el5.rf.x86_64.rpm
安裝指定版本套件
yum --showduplicates list <package-name>
yum list <package-name>-<version>
yum install <package-name>-<version>
列出所有套件庫位址
yum repolist
yum repolist enabled
列出已安裝套件
yum list installed
yum list installed |tail -n +3|cut -d' ' -f1 > installed_packages.lst
或
rpm -qa > installed_packages.lst
yum -y install $(cat installed_packages.lst)
安裝 EPEL 套件庫
EPEL - Extra Packages for Enterprise Linux
rpm -ivh http://mirror01.idc.hinet.net/EPEL/5/i386/epel-release-5-4.noarch.rpm
rpm -ivh http://mirror01.idc.hinet.net/EPEL/6/i386/epel-release-6-8.noarch.rpm
TIPs:
錯誤: Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
解決: sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo
安裝 ELRepo 套件庫
ELRepo - The Community Enterprise Linux Repository
rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org
for RHEL-5, CENTOS-5
rpm -Uvh http://elrepo.org/elrepo-release-5-2.el5.elrepo.noarch.rpm
for RHEL-6, CENTOS-6
rpm -Uvh http://elrepo.org/elrepo-release-6-3.el6.elrepo.noarch.rpm
安裝 RPMforge/RepoForge 套件庫
RPMforge 是由 Dag 及其他包裝者合作維護的。他們為 CentOS 提供超過 5000 個套件,包括 wine、vlc、mplayer、xmms-mp3 及其他受歡迎的媒體工具。它並不是 Red Hat 或 CentOS 的一部份,但卻是為那些發行版本而設計的。
http://repoforge.org/use/
CentOS 如何補安裝套件組
系統在第一次安裝時,都可以選擇要安裝哪些套件組,假使之後系統要補裝某套件組,例如 GNOME 視窗套件,可以使用這些指令,而不用一一找出有哪些相依性的套件名稱。
列出有哪些套件組可安裝
# yum grouplist
安裝 GNOME 視窗套件組
# yum groupinstall "GNOME Desktop Environment"
移除套件組
# yum groupremove "Office Suite and Productivity" "Dial-up Networking Support"
設定 proxy
編輯 /etc/yum.conf
proxy=http://<username>:<password>@<this.is.proxy.ip:<port>/
proxy=http://windowsad\username:password@proxy.server:port/
安裝本機上的 RPM
# yum localinstall my.rpm
建立 YUM 套件庫主機
安裝套件 createrepo
CetOS 5:
createrepo /source/path/reas5
createrepo -g /source/path/reas5/repodata/comps.xml
CetOS 6/7:
createrepo /yum-repo-packages/centos_6.4_x86_64
createrepo -g /yum-repo-packages/centos_6.4_x86_64/repodata/2727...cab6f72-c6-x86_64-comps.xml /yum-repo-packages/centos_6.4_x86_64