原文:https://blog.csdn.net/jubincn/article/details/6687550

rpm2cpio命令:将rpm格式的文件转为cpio格式的文件。rpm是linux中常用的文件格式,方便了用户的安装,但没有cpio格式灵活,最典型的例子就是安装一个在rpm中.so文件时,如果直接使用rpm安装,那么需要处理复杂的依赖关系,将rpm转为cpio,则可以方便地提取.so文件,做过软连接。

比如:

rpm2cpio ../libstdc++-4.3.0-8.i386.rpm | cpio -idv

cpio命令详解(转自百度百科):

cpio是用来建立,还原备份档的工具程序,它可以加入,解开cpio或tar备份档内的文件。

语 法:

  cpio [-0aABckLovV][-C <输入/输出大小>][-F <备份档>][-H <备份格式>][-O <备份档>][--block-size=<区块大小>][--force-local][--help][--quiet][--version] 或 cpio [-bBcdfikmnrsStuvV][-C <输入/输出大小>][-E <范本文件>][-F <备份档>][-H <备份格式>][-I <备份档>][-M <回传信息>][-R <拥有者><:/.><所属群组>][--block-size=<区块大小>][--force-local][--help][--no-absolute-filenames][--no-preserve-owner][--only-verify-crc][--quiet][--sparse][--version][范本样式...] 或 cpio [-0adkiLmpuvV][-R <拥有者><:/.><所属群组>][--help][--no-preserve-owner][--quiet][--sparse][--version][目的目]

补充说明:

  cpio是用来建立,还原备份档的工具程序,它可以加入,解开cpio或tar备份档内的文件。

参 数:

  -0或--null 接受新增列控制字符,通常配合find指令的"-print0"参数使用。

  -a或--reset-access-time 重新设置文件的存取时间。

  -A或--append 附加到已存在的备份档中,且这个备份档必须存放在磁盘上,而不能放置于磁带机里。

  -b或--swap 此参数的效果和同时指定"-sS"参数相同。

  -B 将输入/输出的区块大小改成5210 Bytes。

  -c 使用旧ASCII备份格式。

  -C<区块大小>或--io-size=<区块大小> 设置输入/输出的区块大小,单位是Byte。

  -d或--make-directories 如有需要cpio会自行建立目录。

  -E<范本文件>或--pattern-file=<范本文件> 指定范本文件,其内含有一个或多个范本样式,让cpio解开符合范本条件的文件,格式为每列一个范本样式。

  -f或--nonmatching 让cpio解开所有不符合范本条件的文件。

  -F<备份档>或--file=<备份档> 指定备份档的名称,用来取代标准输入或输出,也能借此通过网络使用另一台主机的保存设备存取备份档。

  -H<备份格式> 指定备份时欲使用的文件格式。

  -i或--extract 执行copy-in模式,还原备份档。

  -l<备份档> 指定备份档的名称,用来取代标准输入,也能借此通过网络使用另一台主机的保存设备读取备份档。

  -k 此参数将忽略不予处理,仅负责解决cpio不同版本间的兼容性问题。

  -l或--link 以硬连接的方式取代复制文件,可在copy-pass模式下运用。

  -L或--dereference 不建立符号连接,直接复制该连接所指向的原始文件。

  -m或preserve-modification-time 不去更换文件的更改时间。

  -M<回传信息>或--message=<回传信息> 设置更换保存媒体的信息。

  -n或--numeric-uid-gid 使用"-tv"参数列出备份档的内容时,若再加上参数"-n",则会以用户识别码和群组识别码替代拥有者和群组名称列出文件清单。

  -o或--create 执行copy-out模式,建立备份档。

  -O<备份档> 指定备份档的名称,用来取代标准输出,也能借此通过网络 使用另一台主机的保存设备存放备份档。

  -p或--pass-through 执行copy-pass模式,略过备份步骤,直接将文件复制到目的目录。

  -r或--rename 当有文件名称需要更动时,采用互动模式。

  -R<拥有者><:/.><所属群组>或  ----owner<拥有者><:/.><所属群组> 在copy-in模式还原备份档,或copy-pass模式复制文件时,可指定这些备份,复制的文件的拥有者与所属群组。

  -s或--swap-bytes 交换每对字节的内容。

  -S或--swap-halfwords 交换每半个字节的内容。  

   -t或--list 将输入的内容呈现出来。

  -u或--unconditional 置换所有文件,不论日期时间的新旧与否,皆不予询问而直接覆盖。

  -v或--verbose 详细显示指令的执行过程。

  -V或--dot 执行指令时,在每个文件的执行程序前面加上"."号

  --block-size=<区块大小> 设置输入/输出的区块大小,假如设置数值为5,则区块大小为2500,若设置成10,则区块大小为5120,依次类推。   

--force-local 强制将备份档存放在本地主机。

  --help 在线帮助。

  --no-absolute-filenames 使用相对路径建立文件名称。

  --no-preserve-owner 不保留文件的拥有者,谁解开了备份档,那些文件就归谁所有。

  -only-verify-crc 当备份档采用CRC备份格式时,可使用这项参数检查备份档内的每个文件是否正确无误。

  --quiet 不显示复制了多少区块。

  --sparse 倘若一个文件内含大量的连续0字节,则将此文件存成稀疏文件。

  --version 显示版本信息。

(转)rpm2cpio和cpio的更多相关文章

  1. linux commands

    abrt-cli --since ;查看abrt捕捉的异常 alias ;别名,alias rm='rm -i':使用“ \rm ” 使用原命令 alsamixer ;图形音量调节,q 增加左声道, ...

  2. CentOS系统 yum 安装 iftop实时流量监控工具

    一. 不多说其他的无用话题.直接看步骤: 1.要安装某个工具,首先得知道这个工具需要依赖包. eg:iftop 就依赖 以下这几个依赖包(不清楚工具依赖什么包“Google.百度”). flex   ...

  3. Linux JDK 安装

    1,下载JDK(Linux版) 官网下载:http://www.oracle.com/technetwork/java/javase/downloads/index.html 2,  建立java目录 ...

  4. cloudera cdh native lib

    如果通过命令行的方式安装cloudera 版本的hadoop,下载它的cdh版本. 解压后执行,你会发现报warning,没有native的库,lib/native是空的. 如何获取native的文件 ...

  5. redhat 下 rpm 指令

    1.如何安装rpm软件包rmp软件包的安装可以使用程序rpm来完成.执行下面的命令 rpm -i your-package.rpm 其中your-package.rpm是你要安装的rpm包的文件名,一 ...

  6. linux rpm问题:怎样查看rpm安装包的安装路径

      x rpm问题:怎样查看rpm安装包的安装路径 2010-07-12 21:19:15 标签:rpm linux 路径 休闲 职场 rpm -qpl xxxxxx.rpm 1.如何安装rpm软件包 ...

  7. [转] CentOS单独安装Apache Benchmark压力测试工具的办法

    Apache安装包中自带的压力测试工具 Apache Benchmark(简称ab) 简单易用,这里就采用 ab作为压力测试工具了. 1.独立安装 ab运行需要依赖apr-util包,安装命令为: 1 ...

  8. 查看rpm和war包内容

    解压rpm包的内容:(没有安装,就像解压tgz包一样rpm包)rpm2cpio *.rpm | cpio -div 解压war包的内容: jar -xvf project.war 解压到当前目录

  9. yum只下载而不安装软件包?

    yum本身自带了两个选项, 用来只下载要安装的rpm包, 而并不实际安装包: yum --downloadonly --downloaddir=/root/Desktop  rpm-name1 rpm ...

随机推荐

  1. 2018.07.25 bzoj2125: 最短路(圆方树+倍增)

    传送门 人生的第一道仙人掌. 这道题求是仙人掌上的最短路. 先建出圆方树,然后用倍增跑最短路,当lca" role="presentation" style=" ...

  2. 《Linux多线程服务端编程——使用muduo C++网络库》读书笔记

    第一章 线程安全的对象生命期管理 第二章 线程同步精要 第三章 多线程服务器的适用场合与常用编程模型 第四章 C++多线程系统编程精要 1.(P84)11个常用的最基本Pthreads函数: 2个:线 ...

  3. cmake-include_directories

    include_directories: Add include directories to the build. include_directories([AFTER|BEFORE] [SYSTE ...

  4. python 求第k个最大数

    #coding = utf-8 import sys def Cal_NO(a,b): nums=sorted(a,reverse=True) result=nums[b-1] return resu ...

  5. jQueryUI datepicker 报错: TypeError: inst is undefined

    前提:要引用的js等都引用好了 调用日期控件的input: <input id="starttime" name="starttime" class=&q ...

  6. Codeforces777C Alyona and Spreadsheet 2017-05-04 17:46 103人阅读 评论(0) 收藏

    C. Alyona and Spreadsheet time limit per test 1 second memory limit per test 256 megabytes input sta ...

  7. 团队项目(第四周之一)—GG队

    Alpha认领任务: 叶尚文:对应键盘监听结果的动画以及计算 于泽浩:制作背景gif图,并保证能在程序中循环播放 龙剑初:项目进度跟进及博客更新 杜婷萱:把图片结合起来,设置云朵透明度的变化 蔡晓晴: ...

  8. wc.java

    GitHub代码链接 1.项目相关要求 •基本功能列表: -c  统计文件中字符的个数 -w 统计文件中的词数 -l   统计文件中的行数 •拓展功能: -a  统计文件中代码行数.注释行数.空行 2 ...

  9. linux系统编程之管道(二):管道读写规则

    一,管道读写规则 当没有数据可读时 O_NONBLOCK disable:read调用阻塞,即进程暂停执行,一直等到有数据来到为止. O_NONBLOCK enable:read调用返回-1,errn ...

  10. Alwayson--问题总结二

    1. 备份首选项作用 答:备份首选项并不影响实际的备份操作,只是在备份前提供标示当前副本是否是推荐的备份副本.管理员可以忽略备份首选项在任意副本上执行完整备份和日志备份. 2. 在辅助副本和主副本备份 ...