rpm常用操作

1、查询、检查软件包
rpm {-q|--query} [select-options] [query-options]
rpm {-V|--verify} [select-options] [verify-options]
2、安装、升级、删除软件包
rpm {-i|--install} [install-options] PACKAGE_FILE ...
rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...
rpm {-F|--freshen} [install-options] PACKAGE_FILE ...
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts]
   [--notriggers] [--repackage] [--test] PACKAGE_NAME ...

【示例】
rpm -v    显示rpm程序的详细信息
rpm --version   显示rpm的版本号
rpm -qa    显示系统中安装的所有软件包
rpm -q gcc   查询指定软件包是否已安装
rpm -qi gcc   显示指定软件包的详细信息
rpm -ql gcc    显示指定软件包所包含的文件列表
rpm -qf /usr/lib/bash   查看指定文件所属的软件包
rpm -qp /tmp/webmin.rpm   查询RPM包文件中的文件信息
rpm -i webmin-1.290-1.noarch.rpm   安装指定的RPM包
rpm -ivh webmin-1.290-1.noarch.rpm 安装并显示详信息
rpm -ivh --test webmin-1.290-1.noarch.rpm 对安装进行测试,并不是安装
rpm -ivh --replacepkgs webmin-1.290-1.noarch.rpm
软件包重复安装将会失败,若仍需要安装必须加--replacepkgs
rpm -ivh --replacefiles webmin-1.290-1.noarch.rpm
软件包的某个文件已在安装其他软件包时安装过,则安装将会失败,若仍需要安装必须加--replacefiles
rpm -ivh --nodeps webmin-1.290-1.noarch.rpm
软件包所依赖的软件包未安装,则安装将会失败,若仍需要安装必须加—nodeps
rpm -ivh --force webmin-1.290-1.noarch.rpm 强制安装指定软件包
     (忽略软件包依赖性和文件冲突,不建议)
rpm –U webmin-1.29   升级指定的软件包
rpm –Uvh webmin-1.29   升级指定的软件包(显示详细信息)

rpm -e webmin-1.29   删除指定的软件包
rpm -V webmin    验证软件包webmin
rpm -Vf /bin/vi    验证包含指定文件的软件包是否正确
rpm -Va     验证所有已经安装的软件包
rpm -Vp webmin.rpm   利用RPM文件验证软件包
注:如校验正确将没有任何输出(.表示验证通过)
5 MD5校验
S 文件尺寸
L 符号链接
T 文件修改日期
D 设备
U 用户
G 用户组
M 模式(包括权限和文件类型)

转载于:https://www.cnblogs.com/MagicLetters/p/3444280.html

### 安装 RPM 包 安装 RPM 包时,最常用的命令是 `rpm -ivh`,其中 `-i` 表示安装,`-v` 显示详细信息,`-h` 显示安装进度条。例如: ```bash rpm -ivh samba-3.0.10-1.4E.i386.rpm ``` 如果需要在安装时指定不同的目录,可以使用 `--relocate` 选项: ```bash rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm ``` 此外,`-U` 选项用于升级包,如果该包尚未安装,则会进行安装: ```bash rpm -Uvh package.rpm ``` 而 `-F` 选项仅用于升级已经安装的包,如果未安装则不会执行任何操作: ```bash rpm -Fvh package.rpm ``` 为了测试某个包是否可以被安装而不实际执行安装过程,可以使用 `--test` 选项: ```bash rpm -ivh --test package.rpm ``` 忽略依赖关系可以通过添加 `--nodeps` 来实现,但这通常不推荐,因为它可能导致系统不稳定[^3]。 ### 查询和验证 RPM 包 查询已安装软件包的信息可以使用 `-q` 选项。要查看特定软件包的详细信息,可结合 `-p` 使用来针对未安装的包文件: ```bash rpm -qpi package.rpm ``` 列出一个已安装软件包包含的所有文件,可以使用 `-l` 选项: ```bash rpm -ql package_name ``` 若想了解某个文件属于哪个 RPM 包,可以使用以下命令: ```bash rpm -qf /path/to/file ``` 校验已安装的软件包完整性,使用 `-V` 或 `--verify`: ```bash rpm -V package_name ``` 此命令会检查文件大小、权限、MD5 校验值等属性以确保它们与原始 RPM 数据库中的记录一致[^1]。 ### 卸载 RPM 包 卸载一个已安装的软件包,使用 `-e` 或 `--erase`: ```bash rpm -e package_name ``` 强制删除即使存在依赖问题也可以通过 `--force` 实现,但同样需要注意这可能引起其他问题: ```bash rpm -e --force package_name ``` ### 获取 RPM 包信息 对于未安装的 RPM 文件,想要快速获取其描述信息,可以使用如下命令: ```bash rpm -qpi package.rpm ``` 列出 RPM 包内所有将被安装的文件列表: ```bash rpm -qpl package.rpm ``` ### 解决依赖问题 YUM(Yellowdog Updater Modified)是一个能够自动处理 RPM 包依赖性的工具。例如,安装软件包及其所有依赖项可以简单地用: ```bash yum install package_name ``` 更新所有可更新的软件包: ```bash yum check-update ``` 清理 YUM 缓存确保获取最新的软件包信息: ```bash yum clean all ``` 这些命令有助于维护基于 Red Hat 的 Linux 系统上的软件包状态,并保持系统的稳定性和安全性[^4]。 ### 其他实用技巧 当需要从 RPM 包中提取文件而不实际安装整个包时,可以利用 `rpm2cpio` 和 `cpio` 工具组合: ```bash rpm2cpio package.rpm | cpio -idv ``` 这样可以直接访问 RPM 包内的内容,这对于调试或自定义安装非常有用[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值