lampbro-linux 软件安装包的管理-rpm命令管理

本文详细介绍了RPM包管理系统的基本概念、安装、升级、卸载、查询等操作方法,并提供了如何利用RPM进行软件包依赖性检查及文件提取的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

软件包的管理简介
源码包:开源,安装时选项自由,可修源码,编译安装时间长。
                #还有少量的脚本安装包,予以新手是源代码的再开发,如添加一些窗口界面等。
二进制包(rpm包、系统默认包):安装快速简单,源码不可知。

RPM包管理-rpm命令管理
--包命名和依赖性
包全名:httpd-2.2.15-15.e16.Centos.1.i686.rpm(包名,版本号,发行次数,linux平台,硬件平台,易于识别手动添加的rpm后缀)

包名:httpd
依赖性:树形a-b-c
                环形a-b-c-a(一个命令执行)
                模块依赖(www.rpmfind.net一般去搜索.so.数字库依赖)


--安装升级和卸载
包全名:在安装升级的时候使用
包名:包已安装卸载时使用,在/var/lib/rpm/

安装
rpm -vih 包全名
           v  verbose 详细信息
           i  install     安装
           h hash       进度

升级
rpm -Uvh 包全名
           U  upgrade 升级

卸载

rpm -e 包名
          e  erase 卸载

--查询是否安装
#不需要在绝对路径,不需要在光盘的packages

rpm  -q  包名           #查询包是否安装,后台数据库当中查询
rpm -qa | grep 包名
            q query 查询
            a  all

--查询包的信息(组建生产包时建立的信息)
rpm -qi 包名
            i  查询软件信息(information)
            p  查询未安装包信息(package)包全名

--查询包中文件安装位置 #不建议手工指定安装位置
rpm -ql 包名
           l  list
           p package 查询未安装包信息,知道一个包打算把文件安装到哪儿 #包的安装位置在生产这个包的时候就指定好的

--查询系统文件属于哪个RPM包
rpm -qf 系统文件名(绝对路径)
            -f  file查询系统文件属于哪个RPM包,但是手动生成的,日志等等不是通过包装出来的不可以反向查出RPM包。

--查询软件包的依赖性
rpm -qR 包名
        -R requies查询软件包的依赖性
        -p package查询未安装包的信息 包全名 需要去到光盘的packages

rpm命令管理—校验和文件提取

校验
rpm -V 已安装的包名
         -V 校验指定RPM包中的文件 verfi  #执行这个命令后会提示包中修改的文件
        验证内容的8个信息具体内容:
        S 文件大小
        M 文件类型权限
        5  文件MD5即文件内容 丢包或篡改
        L 文件路径
        U 文件所有者
        G 文件属组
        T 修改时间
        最后一位:文件类型
                            c配置未见 config
                            d 普通文件documentation
                            g ghost 这个文件不应该被这个RPM包包含
                            l 授权文件 license
                            r 描述文件 readme

提取
#用于修复,例如丢失系统配置文件 。
#解决方式:缺失的功能来自哪个包(搜索引擎rpmfind网站),下载包提取缺失文件,拷贝到相应路径。
rpm2cpio 包全名 |\ cpio -div .文件绝对路径 #\换行,.复制到当前目录;div分别表示新建目录,还原(copy-in)还原过程
#rpm2cpio 将rpm包转换为cpio格式的命令,cpio是一个标准工具,用于创建软件档案文件和从档案文件中提取文件。
rpm2cpio ls来源的包全名 | cpio -idv ./bin/ls 在当前路径中创建bin把ls提取到bin中。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值