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:///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服务器为例,也可以用其他服务器

拓扑图如下:

yarn指定源装包_Server

 

 

服务器配置如下:

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

yarn指定源装包_yarn指定源装包_02

 

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包

 


转载于:https://blog.51cto.com/dg123/1019607