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并加以分析,才能自动化地完成余下的任务。它能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。自己本身也可以做yum服务器,本身可以根据光盘镜像做yum服务器。
搭建yum服务器:
(1)本地yum(服务器不能上网)
第一步:先挂载光盘
mount /dev/cdrom /media/
echo "/dev/cdrom /media iso9660 defaults 0 0" >> /etc/fstab 实现开机挂载
第二步:建立yum仓库(以centos为例)
vim /etc/yum.repos.d/iso.repo (iso是随便取得名字,但是一定要以repo结尾)
[Centos]
name=CentOS
baseurl=file:///media/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
然后保存退出
(如果是redhat5.x的系统这里写成file:///media/Server/,是redhat6.x的系统file:///media/Packages/)
参数的解释
#####
[Centos] (这个是一个标识,可以随便取,必须唯一)
name=CentOS (这个是一个名字,可以随便取,必须唯一)
baseurl=file:///media/Server/ (本地的路径)
enabled=1 (为1则是打开仓库,为0则是关闭仓库)
gpgcheck=1 (公钥值)
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 (检测公钥值的文件路径)
[ ]内的是仓库的名字
name是仓库的描述也可以说是名字
baseurl 仓库的位置
enabled 是否启用这个仓库,1为起用,0为禁用
gpgcheck 是否检查GPG签名(用来验证要安装的包是不是REDHAT官方的)
gpgcheck 的存放地址我们需要用下面的命令导入这个签名。才能使用这项功能
#####
搭建完yum后,先输入 yum clean all
(2)外网yum(服务器能上网)
vim /etc/yum.repos.d/163.repo
[base]
name=centos6
baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch
gpgecheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
然后保存退出
如果系统是5.x版本的redhat(baseurl=http://mirrors.163.com/centos/5/os/$basearch)
安装外网yum的时候可以自己先进去这个网站看看
http://mirrors.163.com/
搭建完yum后,先输入 yum clean all
使用yum
首先用yum来升级软件,yum的操作大都须有超级用户的权限,当然可以用sudo。
装了系统添加删除软件是常事,yum同样可以胜任这一任务,只要软件是rpm安装的。
安装的命令是,yum install xxx,yum会查询数据库,有无这一软件包,如果有,则检查其依赖冲突关系,如果没有依赖冲突,那么最好,下载安装;如果有,则会给出提示,询问是否要同时安装依赖,或删除冲突的包,你可以自己作出判断。
删除的命令是,yum remove xxx,同安装一样,yum也会查询数据库,给出解决依赖关系的提示。
yum的常用命令:
1.yum check-update 列出所有可更新的软件清单
2.yum update 安装所有更新软件
3.yum -y install