[Linux] 023 RPM 包校验与文件提取
1. RPM 包校验
$ rpm -V 已安装的包名
| 选项 | 释义 |
|---|---|
| -V | (verify) 校验指定 RPM 包中的文件 |
(1) 验证内容中的 8 个信息的具体内容如下
| 信息名称 | 释义 |
|---|---|
| S | 文件大小是否改变 |
| M | 文件的类型或文件的权限 (rwx) 是否被改变 |
| 5 | 文件 MD5 校验和是否改变(可以看成文件内容是否改变) |
| D | 设备的主从代码是否改变 |
| L | 文件路径是否改变 |
| U | 文件的属主(所有者)是否改变 |
| G | 文件的属组是否改变 |
| T | 文件的修改时间是否改变 |
(2) 文件类型
| 类型名称 | 释义 |
|---|---|
| c | (config file) 配置文件 |
| d | (documentation) 普通文档 |
| g | (ghost file) “鬼”文件,很少见,就是这个文件不应被这个 RPM 包包含 |
| l | (license file) 授权文件 |
| r | (read me) 描述文件 |
2. RPM 包中文件提取
$ rpm2cpio 包全名 | cpio -idv .文件绝对路径
| 命令 | 释义 |
|---|---|
| rpm2cpio | 将 rpm 包转换为 cpio 格式 |
| cpio | 是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件 |
$ cpio 选项 < [文件|设备]
| 选项 | 释义 |
|---|---|
| -i | copy-in 模式,还原 |
| -d | 还原时自动新建目录 |
| -v | 显示还原过程 |
查询 ls 命令属于哪个软件包
$ rpm -qf /bin/ls
造成 ls 命令误删除假象
$ mv /bin/ls /tmp/
提取 RPM 包中 ls 命令到当前目录的 /bin/ls 下
$ rpm2cpio /mnt/cdrom/Packagea/coreutils-8.4.e16.i686.rpm | cpio -idv ./bin/ls
把 ls 命令复制回 /bin/ 目录,修复文件丢失
$ cp /root/bin/ls /bin/
此为以前听 兄弟连的 Linux 公开课 记下的笔记
[Linux] 023 RPM 包校验与文件提取的更多相关文章
- Linux系列(33)- rpm命令管理之RPM包校验提取(5)
校验 格式 rpm -V 已安装的包名 选项: - -V:校验指定RPM包中的文件(verify) 例子 rpm -V httpd 后, 无任何提示, 代表该文件没有被做任何修改 # 判断本地的apa ...
- Linux下RPM包的安装
Linux下RPM包安装 二进制包(RPM包.系统默认包) RPM安装 rpm -ivh 包全名(查询依赖网址:http://www.rpmfind.net) -i(install):安装 -v(ve ...
- 3-5 RPM包校验
1.RPM包校验 <1>rpm -V 已安装的包名 <2>选项: -V 校验制定RPM包中的文件(verify) <3>说明: <1>若没有显示任何内容 ...
- 软件包管理:rpm命令管理-校验和文件提取
校验主要用于判断文件是否做了更改 修改标志: 会用-V,会看输出结果即可. 当有误操作,比如删了某一个文件,只需知道他属于哪一个rpm包,可用提取找回覆盖就行.并不把整个rpm包安装,而是提取其中的某 ...
- 包管理 ----- Linux操作系统rpm包安装方式步骤
Linux操作系统rpm包安装方式步骤 2016年08月04日 07:00:26 阅读数:17140 转自 : http://os.51cto.com/art/201003/186467.htm 特别 ...
- rpm2cpio---如何不安装但是获取rpm包中的文件
如何不安装但是获取rpm包中的文件 使用工具rpm2cpio和cpio rpm2cpio xxx.rpm | cpio -idmv 参数i表示提取文件.v表示指示执行进程,d和make-directo ...
- 不安装rpm包,取出rpm包里的文件
1.查看rpm包里的文件 [root@VM_166_132 ~]# rpm -qlp mysql5.6.29-1-3.x86_64.rpm |more/etc/ld.so.conf.d/mysql-5 ...
- linux制做RPM包
制作rpm包 1.制作流程 1.1 前期工作 1)创建打包用的目录rpmbuild/{BUILD,SPECS,RPMS, SOURCES,SRPMS} 建议使用普通用户,在用户家目录中创建 2)确定好 ...
- linux制作RPM包
制作rpm包 1.制作流程1.1 前期工作 1)创建打包用的目录rpmbuild/{BUILD,SPECS,RPMS, SOURCES,SRPMS} 建议使用普通用户,在用户家目录中创建 2)确定好制 ...
随机推荐
- nginx负载均衡的搭建和简单例子
一,nginx 下载地址:http://nginx.org/en/download.html 二,下载对应版本 三,打开下载的安装包:如下图 四,运行nginx.exe 1,这个是时候,程序运行都是一 ...
- 命令行运行python -m http.server报错
最近在学习网站搭建,借助python搭建服务器时,在网站目录启动python服务时报错,如下: UnicodeDecodeError: 'utf-8' codec can't decode byte ...
- HTML页面顶部出现空白的解决办法
首先我们按F12打开浏览器的开发者工具(不同浏览器打开方式不一样),选择body元素,会发现body有margin:8px的外边距,需要我们重写默认样式. 解决办法: bdoy { margin:0; ...
- 2019ICPC网赛南京站B题 super_log(欧拉降幂
https://nanti.jisuanke.com/t/41299 题意:让算a^(a^(a^(...))),一共b个a, (mod p)的结果. 思路:这是个幂塔函数,用欧拉降幂公式递归求解. # ...
- JuniorCTF - Web - blind
题目链接 https://ctftime.org/task/7450 参考链接 https://github.com/Dvd848/CTFs/blob/master/2018_35C3_Junior/ ...
- git Octotree:提供项目目录,方便用户在线快速浏览项目结构【转载】
很好奇的是,GitHub 作为代码托管平台,竟然没有提供项目目录,方便用户在线快速浏览项目结构.所以,在线分析项目源码就会变得很繁琐,必须一层一层点击,然后再一次一次地向上返回.要知道,本来 GitH ...
- Ubuntu apt-get install E: 无法定位软件包Ubuntu apt-get install E: 无法定位软件包
sudo cp /etc/apt/sources.list /etc/apt/sources.list-bak #先将之前的source-list备份 sudo vi /etc/apt/sources ...
- 如何用node开发自己的cli工具
如何用node开发自己的cli工具 灵感 写这个工具的灵感以及场景源于youtube的一次闲聊 github 地址 blog首发 使用场景 原本我们写博客展示shell,例如:安装运转docker,一 ...
- 02.list--约瑟夫环
from fib import fib # 参考01.线性表 def josephus_a(n, k, m): """ 约瑟夫环 没有人用0表示,n个人出列即结束 :pa ...
- ubuntu安装pandas
1 安装依赖包 setuptools Numpy: 1.7.1 or higher python-dateutil: 1.5 or higher pytz: Needed for time zone ...