Linux之RPM包命令详解

发布时间:2024-05-26 点击:90
rpm命令是rpm软件包的管理工具。rpm原本是red hat linux发行版专门用来管理linux各项套件的程序,由于它遵循gpl规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。rpm套件管理方式的出现,让linux易于安装,升级,间接提升了linux的适用度。
rpm包与源码包的区别
1、软件包分类
源码包:c源代码包
rpm包:编译之后的二进制包
2、源码包
优点:开源;可以自由选择所需功能;可看源代码;卸载方便(直接删除安装位置);
缺点:安装步骤过多;编译时间过长;
3、rpm包
优点:使用简单,只需要几个命令就可以实现包的安装、升级、查询、卸载;安装速度快;
缺点:不能看源代码;功能选择不如源代码灵活;依赖性;
rpm包命名和依赖性
rpm包的命名规则
1、 httpd-2.4.6-67.el7.centos.x86_64.rpm
httpd 软件包名 2.4.6 软件版本 67 软件发行的次数 el7.centos 适合的linux平台 x86_64 适合的硬件平台 rpm rpm包扩展名2、rpm包的依赖性
树形依赖性:a -> b -> c,即a依赖b,b依赖c环形依赖:a -> b -> c -> arpm基本功能
1、rpm命令用于管理程序包:
主要 作用:安装、升级、卸载、查询、校验、数据库维护
2、rpm具体使用方法
(1)语法:rpm[options] [package_file] 即 rpm 【选项】【包文件】
(2)相关选项参数命令
安装:-i,--install 升级:-u,--update,-f 卸载:-e.--erase 查询:-q --query 校验:-v,--verify 数据库维护:--builddb,--initdb3、各选项参数详解
(1)安装:rpm {-i|--install} [install-options] package_file .. rpm -ivh package_file ..(rpm包常规安装命令) genearl options:综合选项 -i:安装 -v: 详细信息 -vv:更加详细的信息 -h:hash marks 输出进度条:50个#表示进度条 --prefix :安装指定目录 --test:测试安装,检查并报告安装是否完成 --> rpm -ivh --test package_file .. --nodeps:忽略依赖关系,不建议操作 --> rpm -ivh --nodepst package_file --replacepkgs:重新安装rpm包 --> rpm -ivh --replacepkgs package_file --nosignature:不检查签名信息,不检查来源合法性 --nodigest:不检查包完整信息:举列:
[root@localhost leiyuncai]# rpm -ivh zsh- 5.0.2-14.el7.x86_64.rpm注意:忽略 –nodeps 依赖关系强制安装可能会导致所安装包不能够正常工作
(2)升级
rpm {-u|--upgrade} [install-options] package_file .. rpm {-f|--freshen} [install-options] package_file .. -u: 升级或者安装 -f:单纯的升级,如果之前没有rpm包将无法升级 --test:测试安装,检查并报告完成 --> rpm -uvh --test package_file .. --nodeps:忽略依赖关系,不建议操作 --> rpm -uvh --nodepst package_file --replacepkgs:重新安装rpm包 --> rpm -ivh --ueplacepkgs package_file --oldpackage::降级操作 --force:强制升级举列:
[root@localhost leiyuncai]# rpm -uvh zsh-5.0.2-14.el7.x86_64.rpm注意:(1)不要对内核做升级操作,liunx支持多内核并存,直接安装新版本
(2) 如果源程序包的配置文件安装后曾修改过,升级时,新版本的程序提供的同一配置文件不会覆盖原有版本文件,而重命名为(filename,rpmnew)
(3)卸载:
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--test] package_name ... rpm -e 软件包名称 -e:卸载指定程序 -allmatches:卸载所有匹配指定名称的程序包的各个版本 --nodeps:忽略依赖关系 --test:测试卸载,显示依赖关系举列:
[root@localhost ~]# rpm -e zsh(4) 查询
rpm {-q|--query} [select-options] [query-options] select-options:给指定值,一般是需要查询文件名称 -a.all:查询所有已经安装过的包,后面一般通过管道输出至正则表达式匹配-列如: rpm -qa | grep ^z -f file:查看指定的文件由哪个程序包安装生产: -p, --package package_file:对于未安装的程序包执行查询操作 --whatprovides capability:查询指定的capability由哪个程序包提供 --whatrequlres capability:查询指定的-capability被哪个程序包依赖 [query-options] --changelog:查询rpm包的changelog; 历史 -l --list:列出程序包安装生产的文件列表 -i,--info:查询程序包相关的信息,包含版本、信息、时间等等 -c,:查询程序包有哪些指定的配置文件 -d:查询指定的程序包提供的文档信息 --provides:列出指定程程序包的 capability -r,--regulres:查询程序包依赖的包 --scripts:查看程序包自带的脚本片断举列:
1.[root@localhost packages]# rpm -qa #:查询所有安装的包 2.[root@localhost packages]# rpm -qpi httpd-devel #:查询未安装包的详细信息 3.[root@localhost packages]# rpm -qi httpd-devel #:查看程序包的相关信息 4.[root@localhost packages]# rpm -ql httpd-devel #:查看程序包安装产生的文件列表 5.[root@localhost packages]# rpm -qc zsh #:查看程序包的配置文件 6.[root@localhost packages]# rpm -qd zsh #:查看程序包提供的文档信息 7.[root@localhost packages]# rpm -qr zsh # :查询程序包依赖的包

TIOBE发布8月编程语言排行榜:Java第一 与第二名差距大
网站创建费用是多少?网站创建公司哪家强?
免费个人域名申请方法是什么 好的域名有哪些特点
外贸网站制作哪些雷区不能踏入
好的手机网站设计是怎样的?手机网站设计要注意哪些细节?
com 域名续费价格,新手看过来
阿里云怎么买优惠服务器套餐
怎么使用模板建站?使用模板建站有什么好处?