linux软件管理之yum管理操作软件包
什么是rpm 1.1`RPM` 全称 `RedHat Package Manager` 缩写,由红帽开发用于软件包的安装、升级、卸载与查询。 1.2rpm包名组成部分 `RPM` 包命名以-将软件分成了若干部分 `bash-4.2.46-28.el7.x86_64.rpm` 1.3怎么获取rpm包 在刚开始学习rpm包,建议先从本地镜像中获取 `rpm` 但实际生产环境中大多数是通过联网方式获取 `rpm` 包,或者搭建企业私有包管理仓库平台 1.4其他类型的按照包 rpm包 预先编译打包,安装简单 源码包 手动编译打包,安装繁琐 二进制包 解压即用,安装简单
yum基本操作 1.什么是yum `yum/dnf` 是 `RedHat` 及 `CentOS` 系统中的软件包管理器。它能够通过互联网下载 `.rpm` 格式包进行安装,并能自动处理其依赖间关系,无须繁琐地一次次下载安装。 2.什么是yum源 要使用 `yum` 命令工具安装更新软件,需要有一个包含各种 `rpm` 软件包的仓库,这个软件仓库我们一般称为 `yum` 源。当然这个源可以是本地仓库、也可以是网络仓库。如图所示: client --ftp/http/file-> yum地址 --->yum仓库(rpm包集合) 3.yum配置文件 #centos8 cat /etc/yum.conf [main] gpgcheck=1 # 检查来源是否合法,需要有制作者的公钥信息 installonly_limit=3 # 同时可以安装5个软件包、最小为2,设置为0或者1则不限制 clean_requirements_on_remove=True # 删除包时,是否将不再使用的包删除 best=True # 升级时,自动选择安装最新版,即使缺少包的依赖 skip_if_unavailable=False #centos7 vim /etc/yum.cnf cachedir=/var/cache/yum/$basearch/$releasever # 缓存目录 keepcache=0 # 缓存软件包,1启动 0 关闭 debuglevel=2 # 调试级别 logfile=/var/log/yum.log # 日志记录位置 exactarch=1 # 检查平台是否兼容 obsoletes=1 # 检查包是否废弃 gpgcheck=1 # 检查来源是否合法,需要有制作者的公钥信息 plugins=1 installonly_limit=5 # 同时可以安装5个软件包、最小为2,设置为0或者1则不限制 # metadata_expire=90m #每小时手动检查元数据 # in /etc/yum.repos.d #包含repos.d目录中的.repo文件
配置yum源 系统默认的源是国外提供,需要替换为国内的源 1.配置阿里 `yum` 源 # wget -O /etc/yum.repos.d/CentOS-Base.repo \ http://mirrors.aliyun.com/repo/Centos-7.repoyum的日常使用
1.使用dnf/yum list 查询所有仓库中的软件包 yum list yum list | grep httpd
2.使用 `dnf/yum list installed` 查询所有已安装至系统中的软件包 dnf list installed
3.使用 `dnf/yum provides` 查询系统命令来自于哪个软件包 rpm -qf $(which cd) bash-4.2.46-31.el7.x86_64 # PS: rpm需要知道命令的绝对路径, 如果不存在该命令是无法查找到该命令所属的软件包 # yum provides cd #范例 # yum provides zabbix 已加载插件:fastestmirror Repository base is listed more than once in the configuration Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * elrepo: mirrors.neusoft.edu.cn zabbix30-3.0.31-1.el7.x86_64 : Open-source monitoring solution for your IT infrastructure 源 :epel 匹配来源: 提供 :zabbix = 3.0.31-1.el7 zabbix40-4.0.27-1.el7.x86_64 : Open-source monitoring solution for your IT infrastructure 源 :epel 匹配来源: 提供 :zabbix = 4.0.27-1.el7
4.yum安装软件包
yum install -y httpd
5.yum更新软件包
#更新http软件
yum update httpd -y
6.yum删除软件包
yum remove httpd -y
7.yum管理仓库
#
yum repolist
yum repolist all
8.yum管理历史记录
删除http软件
yum remove httpd
yum history
yum history info N
yum history undo N
9.yum缓存软件包
vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=1 # 启动缓存
[root@magedu.com ~]# yum install lrzsz -y
[root@magedu.com ~]# find /var/cache/yum/ -type f -name "*.rpm"
2.缓存rpm包方式二,
yum install httpd -y \
--downloadonly \
--downloaddir=/opt
3.如果缓存的数据包太多,可以使用yum/dnf清楚缓存
# 清理所有yum缓存信息,包括缓存的软件包
yum clean all
#仅清理所有缓存的软件包
yum clean packages