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

相关推荐
x-cmd1 小时前
Mac 涨价后,本地 AI 还能千元入门吗?
linux·人工智能·macos·ai·agent·amd·本地ai入门
AOwhisky3 小时前
下一代容器来了?Docker 宣布原生支持 WebAssembly
java·运维·docker·容器·rust·wasm
摇滚侠7 小时前
Linux 零基础教程 09、11、77
linux·运维·服务器
Lottie20267 小时前
电商自动化提质增效:API接口落地的核心价值与实战用法
运维·自动化
Hardworking6669 小时前
第6章 数据工程
运维·服务器·数据库·数据工程
jieyucx9 小时前
Docker 入门第六阶段:综合实战项目
运维·docker·容器
美丽的欣情10 小时前
RK3588 Debian 交叉编译环境搭建(Windows + VMware Debian + CMake)
运维·windows·debian
嵌入式学习和实践10 小时前
嵌入式 Linux 调闭源 SDK 怕崩?用 dlopen 把第三方动态库库“隔离“起来
linux·三方库
小樱花的樱花10 小时前
Linux 多线程编程:互斥锁(Mutex)详解
linux·c语言·开发语言
TlSfoward10 小时前
TLSFOWARD自动化抓包工具
运维·自动化