yum使用详解
什么是yum?
- 百度百科:Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
- 简而言之,就是我们下载软件包的一个工具,更智能化一些。
配置本地yum源(官方提供的软件)
在本地挂载系统镜像
- 获取和本机系统一致的系统镜像
- 挂载镜像(临时挂载的镜像重启后会消失,可能导致本地yum源失效)
df ##使用df 检查镜像的文件系统
mkdir /westos ##创建一个目录作为挂载目录
mount /dev/sr0 /westos ##将镜像挂载到/westos上
- 永久挂载镜像(本地yum源长久有效)
vim /etc/rc.d/rc.local ##这个配置文件会在用户登陆之前读取,文件中写入了什么命令,在每次系统启动时都会执行一次。
##写入:mount /dev/sr0 /westos
ll /etc/rc.d/rc.local ##查看其权限,修改权限
chmod 755 /etc/rc.d/rc.local
sh /etc/rc.d/rc.local ##使其生效
设定系统yum源指向
cd /etc/yum.repo.d/ 进入yum源配置目录
ls ##查看内容,可以将原有内容移除去其他目录
cp * /mnt
vim node.repo ##文件必须以repo结尾
文件内容:
[rhel] ##仓库名称
name=rhel ##对软件源的描述
baseurl=file:///westos ##仓库地址指向(本地文件以file://开头)
gpgcheck=0 ##表示对从这个源下载的rpm包不进行校验,是否检查GPG(GNU Private Guard),一种密钥方式签名。
enabled=1 ##表示启用这个源,可以不写,默认为1
共享型yum源的部署(基于httpd)
- 上述的yum源只能本机用,别人不能用,所以能不能共享出去yum源呢?
- 安装httpd,可以让所有局域网内同一网段的(可以ping通)主机都可以使用yum源。
在配置好本地yum源的主机中安装httpd
yum install httpd ##只下载不安装
yum install httpd -y ##下载并安装
配置网络yum源
- 首先要开启httpd服务,要关闭防火墙。
systemctl start httpd ##开启httpd共享服务
systemctl enable httpd ##开机自启动
systemctl stop firewalld ##关闭火墙
systemctl disable firewalld ##开机不启动火墙
- 注意:httpd服务共享的目录为:/var/www/html/中的文件
在httpd共享目录中创建一个用于挂载系统镜像的目录:
mkdir /var/www/html/westos
- 永久挂载系统镜像在此目录
vim /etc/rc.d/rc.local ##开机启动系统配置文件
写入:mount /dev/sr0 /var/www/html/westos ##将镜像挂载到httpd共享目录的westos上
chmod +x /etc/rc.d/rc.local ##使其可执行
sh /etc/rc.d/rc.local ##使脚本生效 即挂载成功
- 修改yum源的配置文件:
vim node.repo ##文件必须以repo结尾
文件内容:
[rhel] ##仓库名称
name=rhel ##对软件源的描述
baseurl=http://172.25.254.100/westos ##仓库地址指向(共享文件使用http)
gpgcheck=0 ##表示对从这个源下载的rpm包不进行校验,是否检查GPG(GNU Private Guard),一种密钥方式签名。
enabled=1 ##表示启用这个源,可以不写,默认为1
- 测试:
在浏览器地址中输入共享源主机的地址:
http://ip/westos ##此地址就是网络yum源地址
yum命令的使用
- 我们了解了两种如何配置yum仓库的方法,那么该怎么使用yum呢?
- yum相关参数
yum clean all | 清空yum信息 |
---|---|
yum repolist | 列出仓库信息 |
yum install software | 安装软件 |
yum remove software | 卸载软件 |
yum reinstall software | 重新安装 |
yum update software | 更新(慎用) |
yum list all | 列出所有 |
yum list installed | 列出已安装的 |
yum list available | 列出可以安装的,但是没有安装 |
yum info software | 查看软件信息 |
yum search software | 根据软件信息查找软件 |
yum whatprovides file | 根据文件找出包含该文件的软件 |
yum history | 查看系统中软件管理的历史(更改过的) |
yum history info id | 查看此id的软件管理历史操作 |
yum groups list | 列出组 (虚拟机里) |
yum groups info Security Tools | 查看"Security Tools"组有几个安装包 |
yum groups install “Security Tools” | 安装"Security Tools" 组下的所有个安装包 |
yum groups remove “Security Tools” | 卸载"Security Tools" 组下的所有个安装包 |
如果要查找的软件信息字母较少,使用yum whatprovides file比较方便,例如:ls命令
yum whatprovides */ls
第三方软件仓库的搭建
- 由于我们之前搭建的都是系统中已有的一些软件,是官方的。除此之外,我们还需要用的一些第三方软件。
我们可以把第三方软件的包放入yum仓库里。 - 把所有第三方软件的rpm包放到一个新建目录/software/software中
createrepo -v /software/software
——命令执行成功会生成repodate目录(生成这个repodata文件之后才能被yum仓库识别)- 设定第三方软件的yum源指向
vim /etc/yum.repos.d/node.repo
在原有的系统源指向下面,添加内容:
[software]
name=software
baseurl=file:///software/software
gpgcheck=0
- 实验:
使用网上公开的yum源
- 我们可以通过互联网下载对应系统的yum源到本地使用,也可以在联网的情况下,直接设定互联网的yum源,如网易云镜像,阿里云镜像,中科大镜像等。