yum常用操作命令
Yum 是基于 RPM 包的前端软件包管理器,能够从指定的服务器自动下载RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。 用户可以创建、添加和删除软件包安装源,yum 可以覆盖 rpm 工具的全部功能,并可通过简洁命令优化功能。Yum 还可以简便的管理在本机上安装和下载的rpm 包,也可利用自己的特性下载软件包。
一、yum基本参数说明
-h: 显示帮助信息
-y: 对所有的提问都回答“yes”
-c: 指定配置文件
-q: 安静模式
-v: 详细模式
-d: 设置调试等级(1-10)
-e: 设置错误等级(1-10)
-R: 设置yum处理命令的最大等待时间;
-C: 完全从缓存中运行,而不去下载或者更新任何头文件
- install: 安装rpm软件包
- update: 更新rpm软件包
- check-update: 检查是否有可用的更新rpm软件包
- remove: 删除指定的rpm软件包
- list: 显示软件包的信息
- search: 检查软件包的信息
- info: 显示指定的rpm软件包的描述信息和概要信息
- clean: 清理yum过期的缓存
- shell: 进入yum的shell提示符
- resolvedep: 显示rpm软件包的依赖关系
- localinstall: 安装本地的rpm软件包
- localupdate: 显示本地rpm软件包进行更新
- deplist: 显示rpm软件包的所有依赖关系
二、yum详细使用说明
1 管理软件包
Yum 提供了完整操作系统软件包管理功能,包括检索、查看信息、安装和删除。
1.1 检索软件包
执行 yum search 命令可以检索软件包,例如检索包含“meld”和“kompare”字段的软件包:
-- yum search meld kompare
如果 yum 检测的结果繁多,可以通过 shell 本身的 grep 或者正则表达式进行过滤。
1.2 安装包列表
显示已安装和可安装的软件包列表可以执行以下命令:
-- yum list all
显示包括某些字符的已安装和可安装软件包列表可以执行以下命令:
-- yum list glob_expression...
显示包括某些字符的已安装软件包列表可以执行以下命令:
-- yum list installed glob_expression...
显示包括某些字符的可安装软件包列表可以执行以下命令:
-- yum list available glob_expression…
查看软件仓库
查看可用的软件仓库可以使用以下命令:
-- yum repolist
如果想显示更多信息可以加上-v 选项,或者用 yum repoinfo 命令输出信息。
-- yum repolist -v
-- yum repoinfo
如果需要显示所有可用和不可用的软件仓库,可以使用以下命令:
-- yum repolist all
1.3 显示软件包信息
显示一个或多个软件包可以使用以下命令:
-- yum info package_name...
用户还可以通过查询 yum 数据库查询软件包相关信息:
-- yumdb info package_name
1.4 安装软件包
用户可以以 root 用户使用以下命令安装软件包
-- yum install package_name
除了安装软件包,还可以安装具体的二进制文件,您可以输入文件地址,以root 用户执行安装:
-- yum install /usr/sbin/named
安装命令如下:
-- yum install httpd
如果要安装本地软件包,可以执行:
-- yum localinstall path
1.5 下载软件包
在执行安装流程中,显示以下选项是:
. . .
Total size: 1. 2 M
Is this ok [y/d/N]:
. . .
输入 d,可以执行软件包下载。软件包默认下载路径为/var/cache/yum/$base
--arch/$releasever/packages/。
1.6 删除软件包
删除软件包可以执行以下命令:
--yum remove package_name...
2 管理软件包组
软件包组可以搜集一系列特定功能软件包,比如系统工具和视频软件包组。
安装软件包组可以一起安装其依赖。
2.1 软件包组列表
Summary 选项可以显示软件包组的基本信息:
-- yum groups summary
以下为输出示例:
-- yum groups summary
显示某个软件包组的全部信息可以用以下命令:
-- yum groups info glob_expression...
说明如下:
“-”软件包没有安装并且也不会作为包组内容安装。
“+”软件包没有安装但是进行软件包或包组升级时将会被安装。
“=”软件包已经安装且作为包组的一部分。
No symbol:软件包已经安装,且不属于包组。
2.2 安装软件包组
每个软件包组都有自己的组 ID,要显示包组 id 可以使用以下命令:
-- yum group list ids
查找 KDE 桌面软件包组列表的示例:
-- yum group list ids kde*
有些包组是作为因此软件仓库的,例如,使用因此命令选项示例:
-- yum group list hidden ids kde*
软件包组的安装可以通过软件包组名称安装,也可通过包组 id 安装。
-- yum group install "group name"
-- yum group install groupid
也可用通过以下两种命令安装:
-- yum install @group
-- yum install @^group
下面是 4 中安装 KDE 桌面软件分组的示例:
-- yum group install "KDE Desktop"
-- yum group install kde-desktop
-- yum install @"KDE Desktop"
-- yum install @kde-desktop
2.3 删除软件包组
可以通过软件包组名或者软件包组 id 删除软件包。以 root 权限执行:
-- yum group remove group_name
-- yum group remove groupid
如果软件分组有@标签,也可用以下命令删除。以 root 身份执行:
-- yum remove @group
-- yum remove @^group
删除 KDE 桌面软件分组示例:
-- yum group remove "KDE Desktop"
-- yum group remove kde- desktop
-- yum remove @"KDE Desktop"
-- yum remove @kde-desktop
3.检查和升级软件包
3.1软件包升级检查
查看系统里已经安装的软件包有哪些可以升级,可以执行以下命令:
--yum check-update
3.2 升级软件包
yum 支持一次升级单个/批量软件包,并同时安装/更新相应的依赖包。
升级单一软件包命令:
-- yum update package_name
升级 rpm 软件包命令:
-- yum update rpm
上述输出的说明如下:
a) Loaded plugins: langpacks, product- id——显示已安装和可用的 yum plugins 信息。
b) rpm. x86 _6 4:用户需要下载升级的软件包和依赖软件包。
c) Yum 默认会显示升级软件包的基本信息,并提示是否确认安装,用户可以在使用 yum 命令是添加参数 –y,效果等同于出现 Is this ok [y/d/N]:时输入 yes。输入 d 则进行软件包下载。
d) 安装过程中如果出现错误导致安装过程终止,可以使用 yum history 命令查看详细描述。
如果需要安装一组软件包,可以以 root 用户执行命令:
-- yum group update group_name
批量升级软件包及其依赖 如果需要升级系统所有软件包,可以使用以下命令:
-- yum update
3.3 利用系统光盘与 yum 离线升级
当系统处于离线状态或者无法访问远程更新源时,可以利用更新的系统光盘创建本地 yum 源并进行升级。步骤如下:
创建系统光盘挂载目录,以 root 用户执行:
-- mkdir mount_dir
将系统安装光盘挂载至该目录,以 root 用户执行
-- mount -o loop iso_name mount_dir
编辑/etc/yum. repos.d/new.repo 配置文件以添加光盘路径:
-- baseurl=file://mount_dir
更新 yum 源并进行升级,以 root 用户执行:
-- yum update
升级成功后,卸载系统光盘挂载目录:
-- umount mount_dir 或者 rmdir mount_dir
如果不再使用这个 yum 源进行安装和升级,可以以 root 用户删除文件:
-- rm /etc/yum.repos.d /new.repo
4、软件包操作记录管理
Yum 所有的操作记录默认存在放在/va/lib/yum/history/目录,并可以使用 yum history 命令进行管理操作。
4.1. 查看操作
显示以往 20 条 yum 操作记录,可以使用以下命令。以 root 权限执行:
-- yum history list
如果想显示所有 yum 操作记录,可以使用以下命令。以 root 权限执行:
-- yum history list all
如果想显示某一部分 yum 操作记录,可以使用以下命令。以 root 权限执行:
-- yum history list start_id. . end_id
显示过去 5 条 yum 信息示例如下:
--[root@localhost ~]# yum history list 1..5
以上 yum history list 输出显示内容说明如下:
ID——识别特定记录的标示数;
Login user——区别 yum 命令的操作用户;
Date and time——该条记录的日期和时间;
Action(s)——操作的具体内容;
Altered——记录操作影响的条目数;
下表是 Action 的不同说明:
| Action | 缩写 | 描述 |
| Downgrade | D | 下载更新包 |
| Erase | E | 删除软件包 |
| Install | I | 安装软件包 |
| Obsoleting | O | 软件包标注废弃 |
| Reinstall | R | 软件包重装 |
| Update | U | 升级软件包 |
如果想要同步 rpmdb 或者 yumdb 数据库,可以使用以下命令:
-- yum history sync
如果想显示 yum 历史及数据库状态信息可以使用以下命令:
-- yum history stats
输出 yum history stats 示例如下:
--[root@localhost ~]# yum history stats
Yum 还支持提供过去记录的总结信息,以 root 身份执行以下信息:
-- yum history summary
如果只想查看某一阶段的记录总结信息,以 root 身份执行以下信息:
-- yum history summary start_id. . end_id
显示最后 5 条记录总结信息示例如下:
-- yum history summary 1. . 5
Yum 记录显示还支持通过软件包进行查找,命令如下:
-- yum history package- list glob_expression...
4.2. 审查操作
需要显示某条操作记录的具体综述信息,可以执行以下命令:
-- yum history summary id
其中 id 是操作的的 id。
如果需要显示某条操作记录的详细信息,可以使用以下命令:
-- yum history info id
如果需要显示某一阶段操作记录的详细信息,可以使用以下命令:
-- yum history info start_id. . end_id
示例如下:
-- yum history info 4 . . 5
同样的,用户还可以查询附件信息,命令如下:
-- yum history addon-info id
以及显示最后的记录附加信息命令:
-- yum history addon-info last
示例如下:
-- yum history addon-info 4
4.3. 恢复与重复操作
如果想要撤销某个 yum 操作,可以以 root 权限执行一下操作:
-- yum history undo id
如果需要重复某个 yum 操作,可以以 root 权限执行一下操作:
-- yum history redo id
4.4. 启用新的操作历史
Yum 的操作记录存为一个单独的 SQLite 数据文件。如果需要启用新的操作记录,可以以 root 权限执行命令:
-- yum history new
这个命令会在/var/l ib/yum/history/目录创建新的数据库文件,旧的数据库文件也会保留。
浙公网安备 33010602011771号