Linux中的rpm命令

`rpm`(Red Hat Package Manager)是一个用于管理基于 RPM 的 Linux 发行版(如 Red Hat、CentOS、Fedora 等)软件包的命令行工具。你可以使用 `rpm` 命令来查询、安装、卸载、升级和验证 RPM 软件包。

常用的 `rpm` 命令:

  1. **查询已安装的软件包**:

```bash

rpm -q <package_name>

```

例如,查询是否安装了 `bash` 软件包:

```bash

rpm -q bash

```

如果软件包已安装,命令会返回版本信息;否则,返回未安装信息。

  1. **查询所有已安装的软件包**:

```bash

rpm -qa

```

这将列出系统上所有已安装的软件包。

  1. **查看软件包的详细信息**:

```bash

rpm -qi <package_name>

```

例如,查看 `bash` 软件包的详细信息:

```bash

rpm -qi bash

```

  1. **列出软件包中的所有文件**:

```bash

rpm -ql <package_name>

```

例如,列出 `bash` 软件包中的所有文件:

```bash

rpm -ql bash

```

  1. **安装 RPM 软件包**:

```bash

rpm -ivh <package_file.rpm>

```

安装一个 RPM 包,`-i` 表示安装,`-v` 表示详细输出,`-h` 表示显示进度条。

  1. **卸载 RPM 软件包**:

```bash

rpm -e <package_name>

```

例如,卸载 `bash` 软件包:

```bash

rpm -e bash

```

  1. **升级 RPM 软件包**:

```bash

rpm -Uvh <package_file.rpm>

```

其中,`-U` 表示升级,`-v` 和 `-h` 与安装时相同。

  1. **验证软件包文件的完整性**:

```bash

rpm -V <package_name>

```

例如,验证 `bash` 软件包的完整性:

```bash

rpm -V bash

```

这将检查安装的软件包是否与原始安装文件一致,并返回任何已更改的文件。

  1. **检查文件是否由 RPM 软件包管理**:

```bash

rpm -qf <file_path>

```

例如,检查文件 `/bin/bash` 是否由任何 RPM 包管理:

```bash

rpm -qf /bin/bash

```

  1. **查询软件包依赖**:

```bash

rpm -qR <package_name>

```

例如,查询 `bash` 软件包的依赖关系:

```bash

rpm -qR bash

```

  1. **列出 RPM 包的所有提供的文件**:

```bash

rpm -q --provides <package_name>

```

  1. **显示包是否存在更新**:

```bash

rpm -qa --last

```

显示安装软件包的时间排序。

示例:

  • **查询包**:检查 `httpd` 是否安装:

```bash

rpm -q httpd

```

  • **安装 RPM 包**:

```bash

rpm -ivh nginx-1.14.0-1.el7.x86_64.rpm

```

  • **查看包文件**:

```bash

rpm -ql nginx

```

总结:

`rpm` 是一个非常强大的命令行工具,适用于管理和查询 RPM 包,包括查看包的详细信息、列出安装文件、查询依赖、安装、卸载和升级软件包等操作。

相关推荐
红红谈说9 分钟前
定时发布关机就停,本地定时任务的补跑策略怎么设计?
运维·服务器·定时任务·本地调度·补跑策略·幂等互斥·执行记录
甜到心里的蛋糕15 分钟前
抖音评论自动回复机器人部署实践:无头 Chrome + DeepSeek + NapCat(2C2G 云主机)
java·jvm·chrome·python·抖音·deepseek
宁波阿成18 分钟前
CentOS 7 环境下 Tomcat 8.5 升级至 9.0.123 操作总结
linux·centos·tomcat
4SAPI29 分钟前
企业级大模型工作流基础设施选型指南:4SAPI、硅基流动与 OpenRouter 的架构权衡
运维·人工智能·架构·自动化
幽默小吴31 分钟前
nginx篇
运维·nginx
lily52278337 分钟前
工具池与分发
前端·chrome
爱和冰阔落37 分钟前
【Linux网络】UDP 服务器怎么写?从 socket、bind 到 recvfrom/sendto,手写完整回显服务器
linux·运维·服务器·网络
maochongsandai11040 分钟前
Centos上运行docker应用命令汇总
linux·docker·centos
知已难寻1 小时前
00 · OpenStack 总纲——从云计算到 OpenStack 全景
运维·服务器·云原生·云计算·负载均衡·openstack·perl
一只QAQ1 小时前
python语法学习
linux·python·学习