yum
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
yum的命令形式一般是如下:yum [options] [command] [package ...]
其中的[options]是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。[command]为所要进行的操作,[package ...]是操作的对象。
1. 安装
yum install #全部安装
yum install package1 #安装指定的安装包package1
yum groupinsall group1 #安装程序组group1
yum install "curl-7.61.0-6.0.cf.rhel6.x86_64" --disablerepo="" --enablerepo="city" #指定repo安装软件包
yum local install ~从硬盘安装rpm包并使用yum解决依赖
yum group install "Development Libraries"
yum group install "Development Tools"
2. 更新和升级
yum update #全部更新
yum update package1 #更新指定程序包package1
yum check-update #检查可更新的程序
yum upgrade package1 #升级指定程序包package1
yum groupupdate group1 #升级程序组group1
3. 查找和显示
yum info package1 #显示安装包信息package1
yum list #显示所有已经安装和可以安装的程序包
yum list package1 #显示指定程序包安装情况package1
yum groupinfo group1 #显示程序组group1信息
yum search string #根据关键字string查找安装包
yum list libnghttp2 --disablerepo="*" --enablerepo="epel" #查看软件包在指定源中的信息
yum repolist(all)#显示yum源
yum grouplist #根据组规则显示
yum history#显示历史
4. 删除程序
yum remove package1 #删除程序包package1
yum groupremove group1 #删除程序组group1
yum deplist package1 #查看程序package1依赖情况
5. 清除缓存
yum clean packages: 清除缓存目录下的软件包
yum clean headers: 清除缓存目录下的 headers
yum clean oldheaders: 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的headers
yum makecache: 生成缓存
配置本地Yum仓库
实现此案例需要按照如下步骤进行。
步骤一:搭建一个本地Yum,将RHEL6光盘手动挂载到/media
命令操作如下所示:
[root@localhost ~]# mount /dev/cdrom /media/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# mount | tail -1
/dev/sr0 on /media type iso9660 (ro)
步骤二:将本地设置为客户端,进行Yum验证
Yum客户端需编辑配置文件,命令操作如下所示:
[root@localhost ~]# cd /etc/yum.repos.d/ //必须在这个路径下
[root@localhost yum.repos.d]# ls //此路径下事先有配置文件的模板
rhel-source.repo
[root@localhost yum.repos.d]# cp rhel-source.repo rhel6.repo //配置文件必须以.repo结尾
[root@localhost yum.repos.d]# vim rhel6.repo
[rhel-6] //中括号里内容要求唯一,但不要出现特殊字符
name=Red Hat Enterprise Linux 6 //此为描述信息,可以看情况填写
baseurl=file:///media/ //此项为yum软件仓库位置,指向光盘挂载点
enabled=1 //此项为是否开启,1为开启0为不开启
gpgcheck=1 //此项为是否检查签名,1为监测0为不检测
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release //签名认证信息的路径
[root@localhost /]# yum repolist
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
rhel-6 | 3.9 kB 00:00 ...
rhel-6/primary_db | 3.1 MB 00:00 ...
repo id repo name status
rhel-6 Red Hat Enterprise Linux 6 3,690
repolist: 3,690