Yum 軟件包管理器
Yum(全稱為 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE、CentOS中的Shell前端軟件包管理器。基於RPM包管理,能夠從指定的服務器自動下載RPM包並且安裝,可以自動處理依賴性關系,並且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝
yum源分為三種 1.本地yum源 2.網絡yum源 3.額外軟件yum的安裝
案例一、本地yum配置(以本地光盤為例)
1.創建 掛載點 /mnt/cdrom
[root@dg ~]# mkdir /mnt/cdrom
[root@dg ~]# mount /dev/cdrom /mnt/cdrom 掛載/dev/cdrom
mount: block device /dev/cdrom is write-protected, mounting read-only
[root@dg ~]# mount
/dev/sda2 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
/dev/sda1 on /boot type ext3 (rw)
/dev/hdc on /mnt/cdrom type iso9660 (ro)
2.編輯配置文件
[root@dg ~]# vi /etc/yum.repos.d/rhel-debuginfo.repo
[rhel-debuginfo]
name=Red Hat Enterprise Linux $releasever - $basearch - Debug
baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/$releasever/en/os/$basearch/Debuginfo/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
修改變成如下↓↓↓
[rhel-server]
name=Red Hat Enterprise Linux server
baseurl=file:///mnt/cdrom/Server
enabled=1
gpgcheck=1
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release
[rhel-cluster] 群集能用到 ,下面帶下劃線的可以不配置
name=Red Hat Enterprise Linux Cluser
baseurl=file:///mnt/cdrom/Cluster
enabled=1
gpgcheck=1
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release
配置文件內容簡介:
[ ]內的是倉庫名
name倉庫描述
baseurl 是YUM源地址,因為這裡配置的是FTP,還可以是HTTP,FILE等
enabled 是否啟用這個倉庫,1為起用,0為禁用
gpgcheck 是否檢查GPG簽名(用來驗證要安裝的包是不是REDHAT官方的)
GPGKEY 的存放地址需要用下面的命令到入這個簽名。才能使用這項功能
3.使用本地源安裝 http服務
[root@dg ~]# yum install http –y 默認安裝依賴包
4.查看用yum安裝的程序
[root@dg ~]# yum list installed
[root@dg ~]# yum list installed |grep httpd
Failed to set locale, defaulting to C
This system is not registered with RHN.
RHN support will be disabled.
httpd.i386 2.2.3-22.el5 installed
可以看到我們的http的
案例二. yum網絡源的配制
本案例是以ftp服務器為例,也可以用其他服務器
拓撲圖如下:
服務器配置如下:
1.創建掛載點並掛載
[root@dg ~]# mkdir /mnt/cdrom
[root@dg ~]# mount /dev/cdrom /mnt/cdrom
mount: block device /dev/cdrom is write-protected, mounting read-only
2.安裝ftp服務器
[root@dg Server]# rpm -ivh vsftpd-2.0.5-16.el5.i386.rpm
3.啟動ftp服務
[root@localhost ~]#service vsftpd restart
4.在/var/ftp/ 下建立dg目錄 並且把相關文件復制到這個目錄裡
[root@dg dg]# cp -rf /mnt/cdrom/* ./ 需要時間要長一些,耐心等待
客戶機配置如下:
5.拷貝配置文件至dg1並配置
[root@dg~]#cp /etc/yum.repos.d/rhel-debuginfo.repo /etc/yum.repos.d/dg1.repo
[root@dg ~]# vi /etc/yum.repos.d/dg1.repo
修改為如下:
[rhel-ftpa]
name=ftp
baseurl=ftp://192.168.1.25/dg/Server/ 服務器的ip地址
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
驗證如下:
[root@dg ~]# yum clean all
Loaded plugins: rhnplugin, security
Cleaning up Everything
[root@dg ~]# yum update
Loaded plugins: rhnplugin, security
This system is not registered with RHN.
RHN support will be disabled.
rhel-ftpa | 1.3 kB 00:00
rhel-ftpa/primary | 732 kB 00:00
rhel-ftpa 2292/2292
Skipping security plugin, no data
Setting up Update Process
注意:要把防火牆關掉,否則客戶機可能訪問不到。
本案例服務器是vm下redhat虛擬機,可以修改網卡為橋接模式,同一局域網內即可驗證。
案例三、yum源擴展(針對額外軟件包)
本案例以安裝linuxqq為例
1. 在這與前面的創建掛載是一樣的
2. 將需要的文件拷貝到yum的/root/dg倉庫下,(目錄是自定義)
[root@dg dg]# cp -rf /mnt/cdrom/* ./ 需要時間要長一些
3. 切換至/root/dg/Server 目錄下安裝createrepo工具
[root@dg Server]# ll createrepo*
-r--r--r-- 451 root root 60901 2008-04-21 createrepo-0.4.11-3.el5.noarch.rpm
[root@dg Server]# rpm -ivh createrepo-0.4.11-3.el5.noarch.rpm
 
warning: createrepo-0.4.11-3.el5.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:createrepo ########################################### [100%]
4.使用createrepo命令來實現yum源下repodata的數據重新加載,從而使新文件
[root@dgServer]#createrepo -g /root/dg/Server/repodata/comps-rhel5-server-core.xml /root/dg/Server
看一下安裝成功了↓
2292/2292 - xorg-x11-drv-aiptek-1.0.1-2.i386.rpm
Saving Primary metadata
Saving file lists metadata
Saving other metadata
[root@dg Server]#createrepo -g /root/dg/VT/repodata/comps-rhel5-vt.xml /root/dg/VT
看到下面的信息說明已經安裝成功了
36/36 - Virtualization-ja-JP-5.2-11.noarch.rpm
Saving Primary metadata
Saving file lists metadata
Saving other metadata
5.看下yum的命令和進行測試.
本案例是將linuxqq拷貝到 /root/dg/Server 下
[root@dg Server]# ll linuxqq*
-rw-r--r-- 1 root root 5046743 09-20 19:23 linuxqq-v1.0.2-beta1.i386.rpm
執行yum localinstall 文件名(把文件名寫全)--nogpgcheck可以實現
[root@dg Server]#yum localinstall linuxqq-v1.0.2-beta1.i386.rpm –nogpgcheck 不驗證
6.查看是否安裝上QQ
[root@dg Server]# yum list installed |grep linuxqq
This system is not registered with RHN.
RHN support will be disabled.
linuxqq.i386 v1.0.2-beta1 installed
6.用yum刪除相關服務 比如linuxqq
yum remove “linuxqq*”
小結:
1. yum install <package> 這裡是安裝下載的軟件包
2.yum localinstall <package> 本地安裝軟件包,本服務器做YUM源.
3.yum 會把下載的軟件包和header存儲在cache中,而不會自動刪除。 可以使用yum clea指令進行清除.
4.yum clean headers清除header
5.yum clean packages清除下載的rpm包
6.yum clean all 清除header與rpm包
本文出自 “Running” 博客,請務必保留此出處http://dg123.blog.51cto.com/4750342/1019607