Linux命令之rpm安装命令的实例代码详解

发布时间 - 2017-06-05 00:00:00    点击率:

在 linux 操作系统下,几乎所有的软件均通过rpm 进行安装、卸载及管理等操作。rpm 的全称为redhat package manager ,是由redhat 公司提出的,用于管理linux 下软件包的软件。linux 安装时,除了几个核心模块以外,其余几乎所有的模块均通过rpm 完成安装。rpm 有五种操作模式,分别为:安装、卸载、升级、查询和验证

1)用RPM安装软件包,最简单的命令如下:

1 #rpm -i example.rpm 安装 example.rpm 包;
2 #rpm -iv example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息;
3 #rpm -ivh example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息及安装进度

2)删除已安装的软件包
要卸载软件包example,只需输入以下这行命令:

1 # rpm -e example

注意:软件包名是example,而不是rpm文件名"example.rpm"。

3)升级软件包
升级软件类似于安装软件:

1 # rpm -Uvh example.rpm

用户要注意的是:rpm会自动卸载相应软件包的老版本。如果老版本软件的配置文件通新版本的不兼容,rpm会自动将其保存为另外一个文件,用户会看到下面的信息:

saving /etc/example.conf as /etc/example.conf.rpmsave

这样用户就可以自己手工去更改相应的配置文件。
另外如果用户要安装老版本的软件,用户就会看到下面的出错信息:

# rpm -Uvh example.rpm

examle packag example-2.0-l(which is newer) is already installed

error:example.rpm cannot be installed

如果用户要强行安装就使用-oldpackage参数。

4)查询软件包
用户可以用rpm -q在rpm的数据库中查询相应的软件,rpm会给出软件包的名称,版本,发布版本号,例如:

1 # rpm -q example

下面是查询时可以使用的特定参数:
-a   :查询目前系统安装的所有软件包。
-f 文件名   :查询包括该文件的软件包。
-F   :同-f参数,只是输入是标准输入(例如 find /usr/bin | rpm -qF)
-q 软件包名   : 查询该软件包
-Q   :同-p参数,只是输入是标准输入(例如 find /mnt/cdrom/RedHat/RPMS | rpm -qQ)
下面是输出时的格式选择:
-i 显示软件包的名称,描述,发行,大小,编译日期,安装日期,开发人员等信息。
-l 显示软件包包含的文件
-s 显示软件包包含的文件目前的状态,只有两种状态:normal和missing
-d 显示软件包中的文档(如man,info,README等)
-c 显示软件包中的配置文件,这些文件一般是安装后需要用户手工修改的,例如:sendmail.cf,passwd,inittab等
如果用-v参数就可以得到类似于ls -l的输出

5)用rpm校验软件包

1 rpm -Vf 需要验证到包

rpm 实用技巧! 
1)用户可以通过FTP来安装软件包。如果用户能够连上网络,想安装某个新的软件包时,可以直接用它的URL地址来安装: 
比如:现在在ftp.linuxsir.com/pub/linux/redhat/RPMS/下有这个文件包:foo-1.0-1.i386.rpm,那就可以用这样的命令:

1 # rpm -i ftp.linuxsir.com/pub/linux/redhat/RPMS/foo-1.0-1.i386.rpm

来安装,也可以查询! 

2)如果用户不小心误删了几个文件,但不确定到底是那些文件,想对整个系统进行校验,以了解哪些部分可能已经损坏,可以用:

1 # rpm -Va

3)如果用户碰到一个人不出来的文件,想要知道它是属于那一个软件包的话,可以这样做:

1 # rpm -qf /usr/X11R6/bin/xjewel

结果会得到以下信息:

xjewel-1.6-1

4)如果用户得到一个新的RPM文件,却不清楚它的内容;或想了解某个文件包将会在系统里安装那些文件,可以这样做:

1 # rpm -qpi koules-1.2-2.i386.rpm

 结果会获得很多信息.


# linux  # 软件包  # 可以用  # 几个  # 配置文件  # 并在  # 这样做  # 几乎所有  # 类似于  # 就可以  # 过程中 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 常州企业网站制作公司,全国继续教育网怎么登录?  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  Laravel如何配置Horizon来管理队列?(安装和使用)  如何在VPS电脑上快速搭建网站?  EditPlus中的正则表达式 实战(4)  iOS正则表达式验证手机号、邮箱、身份证号等  什么是javascript作用域_全局和局部作用域有什么区别?  如何正确选择百度移动适配建站域名?  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  Laravel怎么判断请求类型_Laravel Request isMethod用法  Android GridView 滑动条设置一直显示状态(推荐)  制作企业网站建设方案,怎样建设一个公司网站?  如何基于PHP生成高效IDC网络公司建站源码?  标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧  Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  英语简历制作免费网站推荐,如何将简历翻译成英文?  JavaScript如何实现倒计时_时间函数如何精确控制  奇安信“盘古石”团队突破 iOS 26.1 提权  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】  PHP正则匹配日期和时间(时间戳转换)的实例代码  如何快速选择适合个人网站的云服务器配置?  怎么用AI帮你为初创公司进行市场定位分析?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  Laravel如何使用Sanctum进行API认证?(SPA实战)  Laravel如何优化应用性能?(缓存和优化命令)  Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】  JS经典正则表达式笔试题汇总  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  昵图网官方站入口 昵图网素材图库官网入口  Laravel如何生成URL和重定向?(路由助手函数)  济南网站建设制作公司,室内设计网站一般都有哪些功能?  如何在企业微信快速生成手机电脑官网?  Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南  Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)  如何在香港免费服务器上快速搭建网站?  如何快速查询网址的建站时间与历史轨迹?  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  javascript基于原型链的继承及call和apply函数用法分析  Laravel API资源类怎么用_Laravel API Resource数据转换  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  如何将凡科建站内容保存为本地文件?  Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】  千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】