一、RPM包命名规则

1、RPM包在哪

RPM包在光盘中

2、RPM包命名原则

httpd-2.2.15-15.e16.centos.1.i686.rpm

  httpd 软件包名

  2.2.15 软件版本

  15 软件发布次数

  e16.centos 适合的Linux平台

  i686 适合的硬件平台

  rpm  rpm包扩展名

3、RPM包依赖性

树形依赖:a >>> b >>> c

环形依赖:a >>> b >>> c >>> a

模块依赖:查询网站:www.rpmfind.net

二、安装命令

1、包全名与包名

包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径。

包名:操作已经安装的软件包时,使用包名,是搜索/var/lib/rpm/中的数据库。

2、RPM安装

安装和升级时一定要在安装包目录或者打绝对路径。

rpm  -ivh  包全名

选项:

  -i (install)  安装

  -v (verbose) 显示详细信息

  -h (hash) 显示进度

  --nodeps 不检测依赖性(绝不允许使用)

注:安装时要看到第二个100%才说明安装成功

三、升级与卸载

1、升级

rpm  -Uvh  包全名

选项:

  -U  (upgrade) 升级

2、卸载

rpm  -e  包名

选项:

  -e  (erase)卸载

  --nodeps 不检测依赖性(实际工作中也不允许使用)

四、RPM包查询

1、查询是否安装

rpm  -q  包名

# 查询包是否安装

选项:

  -q  查询(query)

rpm  -qa 

# 查询所有已经安装的RPM包

选项:

  -a  所有(all)

2、查询软件包详细信息

rpm  -qi  包名

选项:

  -i  查询软件信息(information)

  -p   查询未安装包信息(package)

查询已安装包信息

查询未安装包信息

注:基本没啥屌用

3、查询包中文件安装位置

rpm  -ql  包名

选项:

  -l  列表(list)

  -p   查询未安装包信息(package)

查询已安装包文件安装位置信息

查询未安装包文件安装位置信息

常规安装位置

4、查询系统文件属于哪个RPM包

rpm  -qf  系统文件名

选项:

  -f   查询系统文件属于哪个软件包(file)

5、查询软件包的依赖性

rpm  -qR  包名

选项:

  -R  查询软件包的依赖性(requires)

  -p  查询未安装包信息(package)

注:查询依赖性可用性不高

五、RPM包校验

1、RPM包校验

rpm  -V  已安装包的包名

选项:

  -V   校验指定rpm包中的文件(verify)

验证内容中的8个信息的具体内容如下:

  s   文件大小是否改变

  M    文件的类型或文件的权限(rwx)是否被改变

  5  文件MD5校验和是否改变(可以看成文件内容是否改变)

  D  设备的主从代码是否改变

  L  文件路径是否改变

  U  文件属性(所有者)是否改变

  G  文件属组是否改变

  T  文件的修改时间是否改变

我往 httpd 配置文件 /etc/httpd/conf/httpd.conf 加了一行注释,发现校验错误。

文件类型:

  c  配置文件(config file)

  d  普通文档(documentation)

  g  “鬼” 文件(ghost file),很少见,就是该文件不应该被这个RPM包包含

  L  授权文件(license file)

  r  描述文件(read me)

2、RPM包中文件提取

rpm2cpio  包全名  |  cpio  -idv  .文件绝对路径

  -rpm2cpio

  # 将rpm包转换为cpio格式的命令

  -cpio

  # 是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

[root@bogon ~]# cpio  选项  <  [文件|设备]

选项:

  -i :copy-in 模式,还原

  -d:还原时自动新建目录

  -v:显示还原过程

RPM包安装软件 -- 详细解读的更多相关文章

  1. ubuntu rpm 包安装使用

    ubuntu安装rpm的方法RED HAT系列用rpm包安装软件,Debian系列得用deb包.毕竟red hat历史悠久,有很多rpm软件包还未对应deb格式.(对应的地方现在是越来越多)在网上找了 ...

  2. yum --rpm包安装

    rpm -ivh  package -i 表示安装install -v表示显示详细信息, -vv更详细些 -h表示显示安装进度 --force:表示强制安装 --nodeps:忽略依赖关系安装 --r ...

  3. rpm包安装

    RPM全称是“RedHatPackageManager”是由RedHat公司发发展起来的,本质是将软件源码包经过编译并且打包成rpm的格式,rpm文件包含的有二进制文件,配置文件,库文件等,同时RPM ...

  4. RPM包安装——手动安装

    RPM包安装 手动安装 挂载光盘 首先查看光盘是否挂载(使用mount命令) RPM包存放位置 在你光盘挂载点的Packages目录下 使用 ll | grep 关键字 可以快速找到你想要的RPM包 ...

  5. [Linux系统] (3)应用安装方式详解(编译安装、rpm包安装、yum安装)

    软件的安装方式: 编译安装 RPM包安装 yum安装 一.编译安装 1.下载一个源码安装包:tengine-2.3.0.tar.gz.这是淘宝二次开发过的nginx.将其解压. .tar.gz 2.查 ...

  6. 使用RPM包安装、配置和拆卸MySQL

    通过rpm包安装.配置及卸载mysql的详细过程. 以MySQL-server-4.0.14-0.i386.rpm为例,放在/usr/src目录下 cd /usr/src rpm -ivh MySQL ...

  7. 包管理 ----- Linux操作系统rpm包安装方式步骤

    Linux操作系统rpm包安装方式步骤 2016年08月04日 07:00:26 阅读数:17140 转自 : http://os.51cto.com/art/201003/186467.htm 特别 ...

  8. src.rpm包安装方法

    有些软件包是以.src.rpm结尾的,这类软件包是包含了源代码的rpm包,在安装时需要进行编译.这类软件包有多种安装方法,以redhat为例说明如下: 注意: 如果没有rpmbuild可以从系统安装光 ...

  9. RPM包安装——yum安装

    RPM包安装 yum安装 yum源文件解析 yum源文件保存在/etc/yum.repos.d/目录中,文件的扩展名一定是".repo",也就是说yum源文件配置只要是扩展名.re ...

随机推荐

  1. JS导入导出Excel表格的方法

    https://blog.csdn.net/aa122273328/article/details/50388673 导出 https://blog.csdn.net/qq_37281252/arti ...

  2. 一次scrapy成功停止的信息

    2017-11-05 18:52:42 [scrapy.core.engine] INFO: Closing spider (finished)2017-11-05 18:52:42 [scrapy. ...

  3. AtCoder Grand Contest 031 B - Reversi

    https://atcoder.jp/contests/agc031/tasks/agc031_b B - Reversi Time Limit: 2 sec / Memory Limit: 1024 ...

  4. 莫队算法 [国家集训队]小Z的袜子

    题目链接   洛古   https://www.luogu.org/problemnew/show/P1494 大概说下自己的理解 先来概率的计算公式   ∑C(2,f(i))  /  C(2,r−l ...

  5. debian 安装使用NTP

    编程之路刚刚开始,错误难免,希望大家能够指出. 领导要求,要4台机器时钟同步,上网查了查,主要看了看ptp和ntp,感觉ntp就够用,索性就直接上手ntp了. 以下内容纯属最基础的内容,只适合第一次接 ...

  6. MySQL Innodb Engine --独立表空间参数(innodb_file_per_table)

    MySQL中参数innodb_file_per_table决定将表存放于ibdata*的共享表空间还是独立的.ibd文件的独立表空间. ================================ ...

  7. eclipse 视图打不开解决方法

    遇到一个eclipse问题,查看方法调用者,或打开调用层次窗口失败,这时要查看一个方法的调用者只好通过全局搜索的方式.网上搜索报错关键词没找到答案,看了一下全局设置也没有想过的选项. 后想到一个ecl ...

  8. SelectDataTable

    项目地址 :  https://github.com/kelin-xycs/SelectDataTable SelectDataTable 一个 用 C# 实现的 用 Sql select DataT ...

  9. node api 之:stream - 流

    stream 模块可以通过以下方式使用: const stream = require('stream'); 流可以是可读的.可写的.或者可读可写的. 所有的流都是 EventEmitter 的实例. ...

  10. Spring Boot基础知识

    Spring Boot 是微服务中最好的 Java 框架. 我们建议你能够成为一名 Spring Boot 的专家. 问题一 Spring Boot.Spring MVC 和 Spring 有什么区别 ...