什么是Yum
YUM的前身是YUP(Yellow dog Updater,Yellow dog Linux的软件更新器),最初由TSS公司(Terra Soft Solutions,INC.)使用Python语言开发而成,后来由杜克大学(Duck University)的Linux开发队伍进行改进,命名为YUM(Yellow dog Updater,Modified)
借助于YUM软件仓库,可以完成安装、卸载、自动升级rpm软件包等任务,能够自动查找并解决rpm包之间的依赖关系,而无需管理员逐个、手动地去安装每个rpm包,使管理员在维护大量Linux服务器时更加轻松自如。特别是在拥有大量Linux主机的本地网络中,构建一台源服务器可以大大缓解软件安装、升级等对Internet的依赖。
准备网络安装源(服务器端)
- 要成功使用YUM机制来更新系统和软件,需要有一个包含各种rpm安装包文件的软件仓库(Repository),提供软件仓库的服务器也称为"源"服务器。在客户机中只要正确指定软件仓库的地址等信息,就可以通过对应的"源"服务器来安装或更新软件了
- YUM软件仓库通常借助于HTTP或FTP协议来进行发布,这样可以面向网络中的所有客户机提供软件源服务。为了便于客户机查询软件包,获取依赖关系等信息,在软件仓库中需要提供仓库数据(Repodata),其中收集了目录下所有rpm包的头部信息
准备软件仓库目录
- 安装光盘中的软件包
- 其他软件包
- 安装并启用vsftpd服务
- 创建依赖关系文件
- 在软件包所在目录
- rpm -ivh create --TAB
- createrepo -v ./ 创建repo文件
准备网络安装源(客户机端)
- 典型的仓库配置
- 内网YUM源
- 公网YUM源
- 使用本地文件夹作为软件仓库
安装并启动vsftp服务
/etc/init.d/vsftpd start
chkconfig --level 2345 vsftpd on
chkconfig vsftpd --list
/etc/yum.repos.d/.repo结尾
mirrorlist 镜像地址
gpgcheck=1 签名认证
baseurl= 仓库位置
enabled=1 使能开启
本地源配置:
[local]
name=local
baseurl=file:///media/cdrom/
gpgcheck=0
enabled=1
网络源配置:
[net]
name=net
baseurl=ftp://192.168.1.108/net/
gpgcheck=0
enabled=1
ls /var/cache/yum/x86_64/6/ 查看yum缓存是否生成
查询软件包
- yum list //查询软件包列表
- yum grouplist //查询软件包组列表
- yum list installed //查询已安装的包
- yum list available //查询可以安装(未安装)的包
- yum info //查询软件包的描述信息
- yum search 软件包名 //查询指定的软件包
- yum -y clean all //清理yum缓存
- yum makecache //重建yum缓存
注:通过执行查询操作"yum grouplist"、"yum groupinfo 分组名称"可以获得YUM仓库中的软件分组信息。例如,执行"yum groupinfo Desktop"命令后将列出软件分组Desktop所包含的软件包等信息 - yum list installed 已经安装过的软件包
- yum search all 把所有软件包都列表出来
针对单个安装包的操作
- yum install ---安装软件包
- yum update ----升级软件包
- yum remove ----卸载软件包
- yum erase ----卸载软件包
针对安装包组的操作
- yum groupinstall “软件包组名称” ---安装软件包组
- yum groupremove “软件包组名称” ---卸载软件包组
- yum groupupdate “软件包组名称” ---升级软件包组
- 选项-y表示不进行交互,回答yes。
注:使用yum工具管理软件包时,结合自命令groupinstall、groupupdate、groupremove可以针对软件分组进行安装、升级、卸载操作。例如,若执行"yum -y groupremove Desktop"命令,则会删除整个Desktop分组所包含的软件包
YUM C/S 结构
- Clients
- Server