yum 命令
基本介绍
yum(Yellowdog Updater Modified)是基于 RPM 包管理系统的高级包管理器。它能够自动解决依赖关系,从指定的软件仓库中下载并安装软件包。yum 是 CentOS、Fedora、RHEL 等基于 Red Hat 的 Linux 发行版中最常用的包管理工具。
资料合集:https://pan.quark.cn/s/6fe3007c3e95、https://pan.quark.cn/s/561de99256a5、https://pan.quark.cn/s/985f55b13d94、https://pan.quark.cn/s/d0fb20abd19a
语法
yum [OPTIONS] COMMAND [PACKAGE]
常用命令
安装命令
install:安装软件包localinstall:安装本地 RPM 包
更新命令
update:更新所有软件包update PACKAGE:更新指定软件包upgrade:升级系统
删除命令
remove:删除软件包erase:删除软件包(与 remove 相同)
查询命令
list:列出软件包info:显示软件包信息search:搜索软件包provides:查找提供指定文件的包repolist:列出可用仓库
仓库管理命令
repolist:列出仓库makecache:生成缓存clean:清理缓存
其他命令
check-update:检查可用更新groupinstall:安装软件组groupremove:删除软件组groups:软件组相关操作
常用选项
基本选项
-y, --assumeyes:自动回答 yes-q, --quiet:安静模式-v, --verbose:详细模式-C, --cacheonly:仅使用缓存--installroot=PATH:指定安装根目录
配置选项
--config=FILE:指定配置文件--setopt=KEY=VALUE:设置配置选项--enableplugin=PLUGIN:启用插件--disableplugin=PLUGIN:禁用插件
使用示例
1. 安装软件包
bash
yum install package_name
2. 安装多个软件包
bash
yum install package1 package2 package3
3. 安装本地 RPM 包
bash
yum localinstall package.rpm
4. 更新所有软件包
bash
yum update
5. 更新指定软件包
bash
yum update package_name
6. 删除软件包
bash
yum remove package_name
7. 搜索软件包
bash
yum search keyword
8. 显示软件包信息
bash
yum info package_name
9. 列出所有已安装包
bash
yum list installed
10. 列出可用仓库
bash
yum repolist
11. 生成缓存
bash
yum makecache
12. 清理缓存
bash
yum clean all
13. 检查可用更新
bash
yum check-update
14. 安装软件组
bash
yum groupinstall "Development Tools"
15. 自动回答 yes 安装
bash
yum -y install package_name
输出格式说明
安装输出
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
package_name x86_64 1.0.0-1 repo_name 100 k
Installing for dependencies:
dependency1 x86_64 2.0.0-1 repo_name 50 k
dependency2 x86_64 3.0.0-1 repo_name 30 k
Transaction Summary
================================================================================
Install 1 Package (+2 Dependent packages)
Total download size: 180 k
Installed size: 500 k
Is this ok [y/N]: y
搜索输出
============================= N/S matched: keyword ==============================
package_name.x86_64 : Description of the package
package_name-devel.x86_64 : Development files for package_name
仓库列表
repo id repo name status
base/7/x86_64 CentOS-7 - Base 10,000
updates/7/x86_64 CentOS-7 - Updates 500
extras/7/x86_64 CentOS-7 - Extras 100
配置文件
主配置文件
/etc/yum.conf
仓库配置目录
/etc/yum.repos.d/
配置文件结构
ini
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
仓库配置文件示例
ini
[repo_name]
name=Repository Name
baseurl=http://example.com/repo/
enabled=1
gpgcheck=1
gpgkey=http://example.com/repo/RPM-GPG-KEY
实用技巧
查看当前配置的仓库
bash
yum repolist
查看仓库配置文件
bash
ls -la /etc/yum.repos.d/
cat /etc/yum.repos.d/*.repo
查找包含特定命令的包
bash
yum provides */command_name
安装软件组
bash
# 列出可用软件组
yum grouplist
# 安装软件组
yum groupinstall "Web Server"
只下载不安装
bash
yum install --downloadonly --downloaddir=/tmp package_name
跳过某些包的更新
bash
yum update --exclude=package_name
使用缓存
bash
yum -C install package_name
相关命令
rpm:底层 RPM 包管理工具dnf:新一代 RPM 包管理器(yum 的替代)yum-config-manager:配置 yum 仓库yum-utils:yum 工具集
注意事项
- 权限要求:需要 root 权限执行安装、升级和删除操作
- 网络连接:需要网络连接从远程仓库下载包
- 缓存:第一次使用 yum 会生成缓存,可能需要一些时间
- 仓库配置:确保仓库配置文件正确
- GPG 验证:建议启用 GPG 验证以确保包的完整性
总结
yum 是 Linux 系统中基于 RPM 的高级包管理器。它能够自动解决依赖关系,从指定的软件仓库中下载并安装软件包。yum 是 CentOS、Fedora、RHEL 等基于 Red Hat 的 Linux 发行版中最常用的包管理工具。