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 包,包括查看包的详细信息、列出安装文件、查询依赖、安装、卸载和升级软件包等操作。

相关推荐
tntxia17 小时前
linux curl命令详解_curl详解
linux
扛枪的书生19 小时前
Linux 网络管理器用法速查
linux
SkyWalking中文站21 小时前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控
顺风尿一寸1 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
雪梨酱QAQ1 天前
Kubeneters HA Cluster部署
运维
江华森1 天前
Spring Cloud 微服务全栈实战:从 Eureka 到 Docker Compose 一文贯通
运维
江华森1 天前
Matplotlib 数据绘图基础入门
运维
XIAOHEZIcode1 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
江华森1 天前
NumPy 数值计算基础入门
运维
唐青枫1 天前
别再只会用 cron:Linux systemd Timer 定时任务实战详解
linux