[转帖]Linux系统下rpm命令使用详解
简介
rpm命令是RPM软件包的管理工具。rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。
rpm命令十分强大,具体使用有如下:
- 查询已安装在linux系统中的rpm软件包的信息
- 查询rpm软件包安装文件的信息
- 安装rpm软件包到当前linux系统
- 从linux系统中卸载已安装的rpm软件包
- 升级当前linux系统的rpm软件包
查询/验证软件包选项:
| 参数 | 说明 |
|---|---|
| -a, --all | 查询/验证所有软件包 |
| -f, --file | 查询/验证文件属于的软件包 |
| -g, --group | 查询/验证组中的软件包 |
| -p, --package | 查询/验证一个软件包 |
| –whatrequires | 查询/验证软件包需要的依赖 |
查询选项:
| 参数 | 说明 |
|---|---|
| -c, --configfiles | 列出所有配置文件 |
| -d, --docfiles | 列出所有程序文档 |
| -L, --licensefiles | 列出所有许可证文件 |
| –dump | 转储基本文件信息 |
| -l, --list | 列出软件包中的文件 |
| –queryformat=QUERYFORMAT | 使用这种格式打印信息 |
| -s, --state | 显示列出文件的状态 |
验证选项:
| 参数 | 说明 |
|---|---|
| –nofiledigest | 不验证文件摘要 |
| –nofiles | 不验证软件包中文件 |
| –nodeps | 不验证包依赖 |
| –noscript | 不执行验证脚本 |
安装/升级/擦除选项:
| 参数 | 说明 |
|---|---|
| –allfiles | 安装全部文件,包含配置文件,否则配置文件会被跳过 |
| -e, --erase=+ | 清除 (卸载) 软件包 |
| –excludedocs | 不安装程序文档 |
| –excludepath= | 略过以
开头的文件 |
| –force | –replacepkgs --replacefiles 的缩写 |
| -F, --freshen=+ | 如果软件包已经安装,升级软件包 |
| -i, --install | 安装软件包 |
| –justdb | 更新数据库,但不修改文件系统 |
| –nodeps | 不验证软件包依赖 |
| –nofiledigest | 不验证文件摘要 |
| –nocontexts | 不安装文件的安全上下文 |
| –noorder | 不对软件包安装重新排序以满足依赖关系 |
| –noscripts | 不执行软件包脚本 |
| –notriggers | 不执行本软件包触发的任何脚本 |
| –oldpackage | 更新到软件包的旧版本(带 --force自动完成这一功能) |
| –percent | 安装软件包时打印百分比 |
| –prefix= | 如果可重定位,便把软件包重定位到 |
| –relocate== | 将文件从 重定位到 |
| –replacefiles | 忽略软件包之间的冲突的文件 |
| –replacepkgs | 如果软件包已经有了,重新安装软件包 |
| –test | 不真正安装,只是判断下是否能安装 |
| -U, --upgrade=+ | 升级软件包 |
| –reinstall=+ | 重新安装软件包 |
| –quiet | 提供更少的详细信息输出 |
| -v, --verbose | 提供更多的详细信息输出 |
| –version | 打印使用的 rpm 版本号 |
| –scripts | 列出安装/删除包中的脚本内容 |
| –conflicts | 列出与此包冲突的功能 |
| –provides | 列出此包提供的功能 |
| –requires | 列出程序包所需的功能 |
| –changelog | 列出此包的更改日志 |
包管理的查询功能: 命令格式
[root@localhost /]# rpm {-q|--query} [select-options] [query-options]
- 1
RPM的查询功能是极为强大,是极为重要的功能之一;举几个常用的例子,更为详细的具体的,请参考#man rpm
#查询系统所有已安装的软件;
[root@localhost /]# rpm -qa
#如果分页查看,再加一个管道 |和more命令;
[root@localhost /]# rpm -qa |more
#查询系统是否安装Xorg包
[root@localhost /]# rpm -qa |grep Xorg
#查询一个已经安装的文件属于哪个软件包;
语法 rpm -qf 文件名
[root@localhost /]# rpm -qf /usr/bin/alsa-info
alsa-utils-1.0.28-2.nd7.1.x86_64
注:文件名所在的绝对路径要指出
#查询已安装软件包都安装到何处;
语法:rpm -ql 软件名 或 rpm rpmquery -ql 软件名
[root@localhost /]# rpm -ql Xorg
#查询一个已安装软件包的信息
语法格式: rpm -qi 软件名
[root@localhost /]# rpm -qi Xorg
#查看一下已安装软件的配置文件;
语法格式:rpm -qc 软件名
[root@localhost RPMS]# rpm -qc Xorg
#查看一个已经安装软件的文档安装位置:
语法格式: rpm -qd 软件名
[root@localhost /]# rpm -qd Xorg
#查看一下已安装软件所依赖的软件包及文件;
语法格式: rpm -qR 软件名
[root@localhost /]# rpm -qR rpm-python
[root@localhost /]# rpm -qpl alsa-utils-1.0.28-2.nd7.1.x86_64.rpm
#查看软件包的文档所在的位置;
语法: rpm -qpd xxx.rpm
[root@localhost RPMS]# rpm -qpd alsa-utils-1.0.28-2.nd7.1.x86_64.rpm
#查看一个软件包的配置文件;
语法: rpm -qpc xxx.rpm
[root@localhost RPMS]# rpm -qpc alsa-utils-1.0.28-2.nd7.1.x86_64.rpm
#查看一个软件包的依赖关系
语法: rpm -qpR alsa-utils-1.0.28-2.nd7.1.x86_64.rpm
[root@localhost archives]# rpm -qpR alsa-utils-1.0.28-2.nd7.1.x86_64.rpm
#软件包的安装、升级、删除等;
#安装和升级一个rpm 包;
[root@localhost /]#rpm -ivh xxx.rpm 注:这个是用来安装一个新的rpm 包; [root@localhost /]#rpm -Uvh xxx.rpm 注:这是用来升级一个rpm 包;
#如果有依赖关系的,请解决依赖关系,其实软件包管理器能很好的解决依赖关系,请看前面的软件包管理器的介绍;如果您在软件包管理器中也找不到依赖关系的包;那只能通过编译他所依赖的包来解决依赖关系,或者强制安装;
语法结构:
[root@localhost /]# rpm -ivh xxx.rpm --nodeps --force
#删除一个rpm 包;
[root@localhost RPMS]# rpm -e alsa-utils
#导入签名: [root@localhost RPMS]# rpm --import 签名文件
[root@localhost fc40]# rpm --import RPM-GPG-KEY-x86_64
关于RPM的签名功能,详情请参见 man rpm
[转帖]Linux系统下rpm命令使用详解的更多相关文章
- linux系统下top命令参数详解
简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按 ...
- Linux系统下chkconfig命令使用详解
chkconfig命令可以用来检查.设置系统的各种服务 使用语法:chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代 ...
- Linux系统下RPM命令和yum的使用
Linux系统下RPM命令和yum的使用 RPM:Redhat Packages Manager (红帽系列软件包的管理),主要用于安装.卸载.升级和管理软件. 一个包由下面几个部分构成: 例如:ht ...
- [转帖]Linux系列之SAR命令使用详解
Linux系列之SAR命令使用详解 sar是System Activity Reporter(系统活动情况报告)的缩写.这个工具所需要的负载很小,也是目前linux中最为全面的性能分析工具之一.此款工 ...
- 【夯实Mysql基础】MySQL在Linux系统下配置文件及日志详解
本文地址 分享提纲: 1. 概述 2. 详解配置文件 3. 详解日志 1.概述 MySQL配置文件在Windows下叫my.ini,在MySQL的安装根目录下:在Linux下叫my.cnf,该文件位于 ...
- Linux系统下DNS主从配置详解
一.DNS概述DNS(Domain Name System),即域名系统.因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串. ...
- [r]Ubuntu Linux系统下apt-get命令详解
Ubuntu Linux系统下apt-get命令详解(via|via) 常用的APT命令参数: apt-cache search package 搜索包 apt-cache show package ...
- 如何解决Linux 系统下 ifconfig 命令无网络接口 ens33
今天我在做Redis的哨兵集群模式的时候,以前都是好的,也不知道从什么时候开始就无法连接Redis服务器了,就是运行如下命令,没有效果:redis-server redis.conf,然后在通过命令查 ...
- 在Linux系统下mail命令的用法
在Linux系统下mail命令的测试 1. 最简单的一个例子: mail -s test admin@aispider.com 这条命令的结果是发一封标题为test的空信给后面的邮箱,如果你有mta并 ...
- Linux系统下 为命令配置别名
1.什么是别名 在管理和维护Linux系统的过程中,将会使用到大量命令,有一些很长的命令或用法经常被用到,重复而频繁的输入某个很长命令或用法是不可取的.这时可以使用 别名 功能将这个过程简单化. Li ...
随机推荐
- java常用正则表达式工具
public class RegexUtils { /** * 是否是无效手机格式 * @param phone 要校验的手机号 * @return true:符合,false:不符合 */ publ ...
- 技术架构+应用场景揭秘,为什么高斯Redis比开源香?
摘要:高斯Redis即保留了开源Redis的能力,同时凭借其存算分离的架构,在成本.稳定性.可靠性.一致性等方面做出了新的突破,也更加适用于当下数据规模庞大的互联网业务. 本文分享自华为云社区< ...
- 通过windows自带管理工具、系统命令行、快捷键等快速操作
windows自带管理工具 我们win+R 输入一些命令,可以快速打开一些界面,比如: sysdm.cpl win10.win11 我电脑,属性与之前win7不同了,我希望打开之前的属性打不开了 通过 ...
- SyntaxError: Non-ASCII character #-*- coding:utf-8 -*-
执行python报错 /usr/bin/python2.7 /root/demo.py File "/root/demo.py", line 2 SyntaxError: Non- ...
- appuploader不是开发者账号
Appuploader是一款可以帮助开发者上传iOS应用到Apple App Store的工具.很多开发者都知道,在上传应用到App Store之前,需要创建开发者账号并获得苹果官方的认证才能进行上传 ...
- 挖掘优质短视频超百万条,火山引擎DataLeap助力电商平台生态治理
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在人们的日常生活中,网购已经成为人们生活中不可或缺的购物形式. 根据<中国社交电商行业发展白皮书( ...
- 火山引擎 DataLeap 下 Notebook 系列文章二:技术路线解析
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在 Jupyter 的生态下,除了 Notebook 本身,火山引擎 DataLeap 研发团队还注意到了很多其他 ...
- Solon Aop 特色开发(2)注入或手动获取Bean
Solon,更小.更快.更自由!本系列专门介绍Solon Aop方面的特色: <Solon Aop 特色开发(1)注入或手动获取配置> <Solon Aop 特色开发(2)注入或手动 ...
- Solon 开发进阶,二、体外扩展机制
Solon 开发进阶 一.插件扩展机制 二.体外扩展机制 三.常用配置说明 四.启动参数说明 五.全局异常订阅 Solon 的一个特色:体外扩展机制,用于解决 fatjar 模式部署时的扩展需求.比如 ...
- html jquery from 表单提交 application/x-www-form-urlencoded 改成 json
html jquery from 表单提交 $(form).ajaxSubmit application/x-www-form-urlencoded 改成 json 要使用 jQuery 根据 n ...