什么是yum源?
yum(全称yelllow dog Updater, Modified),是一个基于rpm包的软件安装管理器,通常用于redhat、fedora、centos、SUSE等发行版linux中。能够从指定的服务器自动下载rpm包并且安装,还能自动处理解决依赖关系。
优点:
方便的添加、删除、更新软件包
可以同时配置多个软件资源库
配置简介/etc/yun.conf
自动解决依赖关系
保持与RPM数据库一致
Yum源配置文件及所需软件
配置文件介绍: /etc/yum.conf 软件源服务配置文件
[main] 主配置
cachedir=/var/cache/yum/$basearch/$releasever 缓存目录
keepcache=0 是否保持安装成功后的包和首部缓存,1为保持,0为不保存
debuglevel=2 调试信息输出等级,1-10,默认为2
logfile=/var/log/yum.log yum的日志文件
exactarch=1 包升级时,精确匹配硬件平台
obsoletes=1 升级后是否删除没有的包,0为不删除,1为删除
gpgcheck=1 安装软件包时,是否检测gpg签名,0为不检测,1为检测
plugins=1 yum插件是否可用,0不可用,1为可用
installonly_limit=3
redhat5及其以上版本,默认已经安装yum软件,可用直接使用
[root@station25 ~]# rpm -qa|grep yum
yum-metadata-parser-1.1.2-16.el6.i686
PackageKit-yum-0.5.8-19.el6.i686
yum-3.2.29-17.el6.noarch
PackageKit-yum-plugin-0.5.8-19.el6.i686
yum-utils-1.1.30-6.el6.noarch
yum-rhn-plugin-0.9.1-26.el6.noarch
创建索引文件命令 createrepo
安装所需软件:createrepo-*.rpm
yum源分类:本地yum源、ftp方式yum源、http方式yum源
(一)本地yum源搭建方式
1,建立yum仓库目录
#mkdir /yum
2,挂载镜像到yum仓库目录
#moung -o loop rhel5u5.iso /mnt
3,复制光盘内容到yum仓库目录
#cp -r /mnt/* /yum
4,修改服务配置文件 /etc/yum.conf(一般不需要修改)
将gpgcheck修改为0,不检查gpg秘钥
gpgcheck=1
注意:因为使用的是光盘源作为yum仓库源,所以默认包含了repository软件依赖关系文件,不需要手动生成。
如果是网上下载的软件包制作为yum源仓库,需要手工创建repository依赖关系文件
#createrepo -g /yum/ 创建文件
#createrepo --update /yum 更新依赖关系文件
客户端使用 yum 源仓库的配置: 修改文件 /etc/yum.repo.d/xxx.repo。
首先将该目录下的*.repo文件改名,添加后缀名,如:*.repo.bak。新建我们需要的repo配置文件。
如:
# vim /etc/yum.repos.d/newyum.repo
[rhel-Server] 自定义的仓库名称
name=RHEL5/Server 自定义说明
baseurl=file:///yum/Server 指定使用的协议和yum源所在位置
enabled=1 是否启用该yum仓库,1为使用,0为不使用
gpgcheck=0 是否进程gpg秘钥检查,1为检查,0为不检查
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 指定gpg秘钥所在位置
说明:
baseurl= 一栏是指定使用何种yum源
gpgcheck= 一栏表示是否秘钥检测,如果需要检查,可以手工导入秘钥
#rpm --import /etc/pki/rpm-gpg/gpg秘钥文件名
在/etc/yum.repo.d/目录下,最好只存在一个后缀名为 repo的文件,其他的文件改名,防止干扰。
Ftp方式yum源搭建
本地yum源仅限本地主机使用,如果需要给局域网内其他主机使用搭建yum源,那么需要通过网络协议将yum源共享出去,给其他主机使用。如:ftp方式,http方式
(1)安装ftp服务软件包——vsftpd
#mount -o loop rhel5u5.iso /mnt
#rpm -ivh /mnt/Server/vsftpd-2.0.5-16.el5.i386.rpm
(2)在ftp共享数据目录下新建yum仓库目录,将iso镜像内容拷贝到仓库目录
#mkdir /var/ftp/rhel5yum
#cp -r /mnt/* /var/ftp/rhel5yum
(3)启动vsftpd服务
#service vsftpd restart
客户端使用时,只需将/etc/yum.repo.d/目录下 *.repo文件的baseurl改为ftp方式即可使用
假如:yum仓库源主机IP为10.1.1.10,客户端配置应如下:
[rhel-Server] 自定义的仓库名称
name=RHEL5/Server 自定义说明
baseurl=ftp://10.1.1.10/rhel5yum/Server 指定使用的协议和yum源所在位置
enabled=1 是否启用该yum仓库,1为使用,0为不使用
gpgcheck=0 是否进程gpg秘钥检查,1为检查,0为不检查
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 指定gpg秘钥所在位置
客户端使用测试命令
yum的缓存文件/var/cache/yum:
yum clean packages 清除缓存包
yum clean headers 清除缓存rpm头文件
yum clean all 清除所有缓存
yum源仓库rpm包列表:
yum list
yum grouplist
yum list package_name
yum list updates 列出可以更新的包
yum list installed 列出已经安装的包
yum list extras 列出已经安装但不属于yum仓库的包
查看yum仓库中rpm包的信息:
yum info package_name 查看yum参考中指定包的信息
yum groupinfo group_name
rpm包的更新:
yum check-update 检查是否有更新的rpm包
yum update 更新所有软件包
yum update package_name 更新指定软件包
使用yum安装与卸载软件包:
yum install package_name
yum groupinstall group_name
yum remove package_name
yum groupremove group_name
扩展:使用互联网yum源
访问这两个站点,将repo配置文件下载到本地/etc/yum.repo.d/目录下即可使用
如:在浏览器访问:http://mirrors.163.com
找到可以供rhel使用的centos或fedora,点击右边的centoss使用帮助
根据使用说明,先备份指点的repo文件,再选择下载下面提供的repo文件,选择centos5或centos6
会自动弹出下载框,下载repo文件,然后移动到/etc/yum.repo.d目录下
测试使用
yum clean all
yum list