RPM 进行安装、卸载及管理的操作实例

发布时间 - 2017-06-20 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如何使用.env文件管理环境变量?(最佳实践)  公司网站制作价格怎么算,公司办个官网需要多少钱?  谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复  如何在不使用负向后查找的情况下匹配特定条件前的换行符  高性能网站服务器配置指南:安全稳定与高效建站核心方案  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  如何在阿里云ECS服务器部署织梦CMS网站?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  实例解析angularjs的filter过滤器  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  香港服务器网站推广:SEO优化与外贸独立站搭建策略  西安专业网站制作公司有哪些,陕西省建行官方网站?  Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理  Laravel如何实现文件上传和存储?(本地与S3配置)  香港网站服务器数量如何影响SEO优化效果?  Swift中循环语句中的转移语句 break 和 continue  laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法  软银砸40亿美元收购DigitalBridge 强化AI资料中心布局  Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程  javascript中闭包概念与用法深入理解  Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】  Java解压缩zip - 解压缩多个文件或文件夹实例  如何用低价快速搭建高质量网站?  Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  MySQL查询结果复制到新表的方法(更新、插入)  Laravel如何使用模型观察者?(Observer代码示例)  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  如何快速上传自定义模板至建站之星?  laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法  如何获取免费开源的自助建站系统源码?  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  php485函数参数是什么意思_php485各参数详细说明【介绍】  什么是javascript作用域_全局和局部作用域有什么区别?  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  如何正确选择百度移动适配建站域名?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  如何用虚拟主机快速搭建网站?详细步骤解析  Internet Explorer官网直接进入 IE浏览器在线体验版网址  Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】  Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  Laravel distinct去重查询_Laravel Eloquent去重方法