Linux命令学习手册-cpio

cpio [选项] > 文件名或者设备名 
cpio [选项] < 文件名或者设备名

功能

cpio 命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以 .cpio 或者 .tar 结尾的文件。

描述

选项说明:详细选项说明参看下表, 包括:选项、含义

  • -o 将文件拷贝打包成文件或者将文件输出到设备上。
  • -i 将打包文件解压或者将设备上的备份还原到系统。
  • -t 查看 cpio 打包的文件内容或者输出到设备上的文件内容。
  • -v 显示打包过程中的文件名称。
  • -d 在 cpio 还原文件的过程中,自动的建立相应的目录。
  • -c 一种较新的存储方式。
  • -B 让默认的Blocks可以增大到 5120 bytes ,默认Blocks为 512 bytes ,这样做的好处是可以加快存取速度。

注意,

  1. cpio 恢复的路径,如果 cpio 在打包备份的时候用的是绝对路径,那么在恢复的时候会自动恢复到这些绝对路径下,同理,如果在打包备份用的是相对路径,还原时也将恢复到相对路径下。
  2. cpio 无法直接读取文件,它需要每个文件或者目录的完整路径名才能识别读取,而 find 命令的输出刚好做到了这点,因此, cpio 命令一般和 find 命令配合使用。
  3. cpio 恢复的时候不会自动覆盖同名文件。
  4. 不会创建目录而是直接解压到当前文件夹。

举例

将 etc 目录备份

$find ./etc -print |cpio -ov >etc.cpio

要恢复文件的时候

#cpio -idv

只是查看 etc.cpio 文件,可以使用

# cpio -tv

输入之后,输出如下:

drwxrwxr-x   4 quiethea quiethea        0 Nov  4 17:14 etc 
-rw-rw-r--   1 quiethea quiethea        0 Nov  4 17:07 etc/2 
drwxrwxr-x   2 quiethea quiethea        0 Nov  4 17:07 etc/11 
-rw-rw-r--   1 quiethea quiethea        0 Nov  4 17:07 etc/11/11 
-rw-rw-r--   1 quiethea quiethea        0 Nov  4 17:07 etc/4 
drwxrwxr-x   2 quiethea quiethea        0 Nov  4 17:07 etc/22 
-rw-rw-r--   1 quiethea quiethea        0 Nov  4 17:07 etc/3 
-rw-rw-r--   1 quiethea quiethea        0 Nov  4 17:07 etc/1 
-rw-rw-r--   1 quiethea quiethea        0 Nov  4 17:07 etc/5

这样显示得是将要恢复得文件得名称。

其它

现在,内核刚刚启动的时候,会事先挂一个 initrd 内存文件系统,这个 initrd 文件系统镜像可以由 cpio 制作。参见内核源码文档 initrd.txt 。

例如我有一个非常简单的文件系统 rootfs, 制作镜像方法如下

$cd rootfs 
$find . | cpio -c -o -v |gzip -9 -n >../ramdisk.img

这样,父目录下会生成一个 ramdisk.img 压缩文件系统镜像。

将镜像解压恢复成文件系统的命令

$mkdir rootfs 
$cp ramdisk.img rootfs 
$cd rootfs 
$mv ramdisk.img ramdisk.img.gz 
$gunzip ramdisk.img.gz 
$cpio -i <ramdisk.img
$rm ramdisk.img

这样,当前目录下就是原来 rootfs 中的内容了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值