共计 2541 个字符,预计需要花费 7 分钟才能阅读完成。
导读 | Yum(全称为 Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。 |
YUM 是“Yellow dog Update, Modified”的缩写,是一个软件包管理器,因为 Linux 系统存在特有的依赖关系,YUM 就是为了解决依赖关系而存在,YUM 源相当一个目录,当我们需要安装依赖软件时,YUM 从指定的地方自动下载 RPM 包并安装,能够很好的解决依赖关系问题。
YUM 的基本工作机制:在服务器上存放了所有 RPM 软件包,然后以相关的功能去分析每个 RPM 文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内,如果客户端需要安装某个软件时,先下载服务器上记录的依赖性关系文件(可以通过 www 过 FTP 方式),通过对服务器端下载的记录数据进行分析,然后取得所有相关的软件,一次全部下载下来进行安装。
yum list all ## 列出所有安转包
yum list installed ### 列出已经安装的
yum list available ### 列出没有安装的
yum remove software ### 卸载软件
yum install software ### 安装软件
yum search 关键字 ### 搜索与关键字相关的软件
yum whatprovides 文件 ### 搜索包含此文件的包
yum reinstall software ### 从新安装软件
yum localinstall 第三方软件 ## 安装该软件并解决依赖关系
yum info software ### 查询软件信息
yum groups list ### 列出软件组
yum groups install ### 安装组
yum groups remove ### 卸载组
yum groups info ### 查看组信息
建立官方软件仓库需要一个与本机匹配的镜像,实验的主机是 rhel7.1,所以镜像也是此版本的。
将镜像挂在在一个目录中,df 可以查看是否挂载成功。
路径:/etc/yum.repos.d/rhel-dvd.repo 文件, 系统只会读取以.repo 结尾文件, 名字无所谓,gpgcheck=0 就是不进行 gpg 检测,gpg 检测是使用 yum 安装软件对软件输入公钥进行验证,看来源是否安全,Baseurl 是指定查找解决依赖关系软件的路径,因为这是本地 yum 配置,所以使用“file://”, /yum 就是刚才镜像的挂载点
yum clean all
使配置生效。
配置网络 yum 源,使我们建立的 yum 仓库可以共享到网络上, 可以是基于 httpd 服务,也可以基于 ftp 服务。这里使用 httpd 服务,httpd 是 Apache 超文本传输协议。
yum install httpd -y
先安装提供 http 服务的 httpd 软件, 也可以验证刚才本地 yum 源配置是否成功。安装成功,本地 yum 源配置正确。
打开 httpd 服务,开机自东启动服务,关闭防火墙。
Httpd 默认发布目录是 /var/www/html/,相当于根目录,所有共享的文件都要放在这个目录里。在 /etc/httpd/conf/httpd.conf 文件可以查看到第 119 行。
在这个“根”目录建立一个目录,并将刚才的 /yum/ 卸载,然后把镜像挂载到这个建立的目录里。
vim /etc/yum.repos.d/rhel-dvd.repo
yum clean all
然后清理缓存,使配置生效。
开机自动挂载镜像,我们就可以每次开机直接安装更新软件, 并且自动共享 yum 仓库,在 /etc/fstab 文件最后添加一行命令。
以后当我们重启时,系统开机会读取 /etc/fstab 文件,帮我们挂载上镜像,我们就可以一劳永逸了。
打开浏览器,输入 172.25.98.250/yumsource,就可以看到我们配置的网络 yum 源。
vim /etc/yum.conf
添加如下命令, 让 search 软件时, 就会自动过滤。
exclude=*.x86_64 ### 忽略 64 位安装包
exclude=*.i686 ### 忽略 32 位安装包
当我们要安装的软件官方镜像中没有时,我们就需要在网上下载一个 rpm 包。
rpm ### 底层软件管理工具
-i ###install
-v ### 显示信息
-h ### 指定包的解密方式为 hash
-q ### 查询
-p ### 指定软件包本身
-l ### 列出软件中文件的名字
--scripts ### 查看软件安装和卸载过程中所执行的动作
-f ### 查询某个文件属于那个安装包
-a ### 所有
-e ### 卸载
--force ### 强制
--nodeps ### 忽略依赖性
-c ### 配置文件
rpm2cpio 软件名 | cpio -id ### 将软件包按目录拆开
安装 wps:
rpm -ihp wps-office-10.1.0.5672-1.a21.x86_64.rpm
如果出现一些依赖项,就一个一个找到提供这些依赖关系 的软件安装就可以了,或者搭建第三方软件仓库,就会会自动帮我们安装依赖项。
createrepo /software ## 在建立的仓库目录中执行, 就会生成 repodate 目录
在 /etc/yum.repos.d/xxx.repo 编写指定 /software 的 yum 源。
清理缓存,使配置生效。
yum repolist all ## 列出仓库列表
可以看到两个“仓库”, 一个是用镜像建立的官方仓库, 一个是建立的第三方仓库。
搭建好第三方软件仓库后, 用 yum 安装该仓库软件时会自动帮助我们解决依赖项问题。