yum 常用命令
yum
是在 Linux CentOS 上使用的软件包管理系统,它负责/etc/yum.repos.d/
定义的源镜像存储库管理软件包以及依赖关系。本文记录一些yum
常用的一些命令。
1. 从 yum 安装一个软件包
yum install <package name>
2. 从 yum 卸载一个软件包
yum remove <package name>
3. 重新从 yum 安装一个软件包
yum reinstall <package name>
4. 从 yum 搜索一个软件包
yum search <package name>
5. 显示 yum 软件包的信息
yum info <package name>
6. 更新从 yum 安装的软件包
# 更新所有软件包
yum update
# 更新特定的软件包
yum update <package name>
7. 显示 yum 历史
yum history
8. 显示已经启用的 yum 存储库的列表
yum repolist
9. 找出哪个 yum 包提供了一个特定的文件
# example: /usr/bin/nc
yum whatprovides "*bin/nc"
10. 清空 yum 缓存
yum clean all
11. 列出已安装的软件包
# yum 实际上使用的是 rpm 包,所以可以使用 rpm 命令查询出安装包的信息
rpm -qa
# 筛选出 mysql 的的软件包
rpm -qa | grep -i mysql
# 列出 rpm 包的文件内容
rpm -ql PACKAGE_NAME
更换本机 yum 源
网易(163)yum源是国内最好的yum源之一,无论是速度还是软件版本,都非常的不错,将yum源设置为163yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到。
1. 切换到系统yum源的目录下,即:
cd /etc/yum.repos.d
2. 备份系统默认yum源:
mv CentOS-Base.repo CentOS-Base.repo.bk
3. 下载163网易的yum源:
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
# 中科大的 yum 源
wget http://centos.ustc.edu.cn/CentOS-Base.repo
# sohu 的 yum 源
wget http://mirrors.sohu.com/help/CentOS-Base-sohu.repo
本文以网易的源为例
4. 更改网易的源为默认的系统 yum 源,即:
mv CentOS7-Base-163.repo CentOS-Base.repo
5. 运行yum makecache 生成缓存:
yum makecache
此时可能会出现:
HTTP ERORR 404-Not Found Trying othermirror
原因可能是 yum 查找软件包使用了过时的缓存(此时可能需要去 /etc/yum.repos.d
目录,找到过时的缓存,把它去掉),清空更新之后,再次安装软件,问题消失,具体见如下指令:
# 清空缓存
yum clean all
或
yum clean headers
yum clean packages
# 更新
yum update
# 重新生成缓存
yum makecache
yum makecache
主要目的是将服务器上的软件包信息在本地缓存,以提高搜索安装软件的速度。