1. YUM管理:
yum命令是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
1.1 yum工作原理:
当我们执行 yum install nginx -y
,yum会先访问本地缓存,如果有直接安装,如果没有,则通过元数据找到该软件包,通过该软件内部数据库的提示,找到相应的依赖包,然后继续查找元数据中是否有这些依赖包,如果没有会提示依赖包没有镜像提供。如果nginx软件包和依赖包都找到了,就根据配置文件中的baseurl去下载
1.2 配置网络源:
代码语言:javascript复制### 如果系统是刚安装好,那么系统中会默认就会有几个repo文件,但是baseurl的地址是外网地址,
### 所以下载包的速度会比较慢,可以在安装wget包后,将其全部替换为国内yum源。
### 安装wget命令:
yum install wget -y
### 删除默认的yum源:
rm -rf /etc/yum.repos.d/*
### 下面三个centos源,任选其一即可,同时配置了也只生效一个。
# 163的yum源:
wget -O /etc/yum.repos.d/CentOS7-Base-163.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
# 阿里云的yum源:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 搜狐没有现成的yum源文件下载,需要自己配置:
[sohu]
name=Centos-$releasever-sohu
baseurl=http://mirrors.sohu.com/centos/$releasever/os/$basearch
gpgcheck=1
gpgkey=http://mirrors.sohu.com/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-$releasever
### 再配置一个epel源:
wget -P /etc/yum.repos.d/ https://mirrors.aliyun.com/repo/epel-7.repo
### 生成元数据:
yum makecache
1.3 自动配置仓库:
代码语言:javascript复制### 你也可以用命令自动配置仓库:
# 安装yum的扩展包:
yum install yum-utils -y
# 自动配置国内epel仓库:
yum-config-manager --add-repo=https://mirrors.tuna.tsinghua.edu.cn/epel/7/x86_64/
# 手工添加秘钥:
vim /etc/yum.repos.d/mirrors.tuna.tsinghua.edu.cn_epel_7_x86_64_.repo
[epel]
name= epel 7 repo
baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/x86_64/
gpgcheck=1
gpgkey=https://mirrors.tuna.tsinghua.edu.cn/epel/RPM-GPG-KEY-EPEL-7
enabled=1
1.4 禁用/启用仓库:
代码语言:javascript复制### 禁用epel仓库:
yum-config-manager --disable epel
### 启用epel仓库:
yum-config-manager --enable epel
# epel 是仓库的id [epel]
# 查看仓库状态:
yum repolist all
1.5 yum常用命令:
代码语言:javascript复制yum repolist {all|enabled|disabled} 列出所有/已启用/已禁用的yum源
yum list {all|installed|avaliable|zabbix*} 列出所有/已安装/可安装的软件包/zabbix包
yum grouplist 列出所有组包
yum groupinstall "grouppackage" 安装组包
yum info package 显示某一个软件包的信息
yum install package 安装软件包
yum remove|erase package 卸载软件包
yum reinstall package 重新安装软件包
yum provides files 查询某个文件是哪个软件包生成的
yum search file 查询某个文件是哪个软件包生成的