zoukankan      html  css  js  c++  java
  • cpio的用法

    cpio

    这个命令挺有趣的,因为 cpio 可以备份任何东西,包括装置设备文件。不过 cpio 有个大问题, 那就是 cpio 不会主动的去找文件来备份!啊!那怎办?所以罗,一般来说, cpio 得要配合类似 find 等可以找到档名的命令来告知 cpio 该被备份的数据在哪里。

    [root@www ~]# cpio -ovcB  > [file|device]           <==备份
    [root@www ~]# cpio -ivcdu < [file|device]           <==还原
    [root@www ~]# cpio -ivct  < [file|device]           <==察看
    备份会使用到的选项与参数:
      -o :将数据 copy 输出到文件或装置上 
      -B :让默认的 Blocks 可以添加至 5120 bytes ,默认是 512 bytes ! 
         这样的好处是可以让大文件的储存速度加快(请参考 i-nodes 的观念) 
    还原会使用到的选项与参数:
      -i :将数据自文件或装置 copy 出来系统当中 
      -d :自动创建目录!使用 cpio 所备份的数据内容不见得会在同一层目录中,因此我们
           必须要让 cpio 在还原时可以创建新目录,此时就得要 -d 选项的帮助!
      -u :自动的将较新的文件覆盖较旧的文件!
      -t :需配合 -i 选项,可用在"察看"以 cpio 创建的文件或装置的内容 
    一些可共享的选项与参数:
      -v :让储存的过程中文件名称可以在萤幕上显示 
      -c :一种较新的 portable format 方式储存 

    你应该会发现一件事情,就是上述的选项与命令中怎么会没有指定需要备份的数据呢?还有那个大於 (>) 与小於 (<) 符号是怎么回事啊?因为 cpio 会将数据整个显示到萤幕上,因此我们可以透过将这些萤幕的数据重新导向 (>) 一个新的文件! 至於还原呢?就是将备份文件读进来 cpio (<) 进行处理之意!我们来进行几个案例你就知道啥是啥了!

    范例:找出 /boot 底下的所有文件,然后将他备份到 /tmp/boot.cpio 去!
    [root@www ~]# find /boot -print
    /boot
    /boot/message
    /boot/initrd-2.6.18-128.el5.img
    ....以下省略....
    # 透过这个 find 我们可以找到 /boot 底下应该要存在的档名!包括文件与目录
    
    [root@www ~]# find /boot | cpio -ocvB > /tmp/boot.cpio
    [root@www ~]# ll -h /tmp/boot.cpio
    -rw-r--r-- 1 root root 16M Dec 17 23:30 /tmp/boot.cpio

    我们使用 find /boot 可以找出档名,然后透过那条管线 (|, 亦即键盘上的 shift+ 的组合), 就能将档名传给 cpio 来进行处理!最终会得到 /tmp/boot.cpio 那个文件喔!接下来让我们来进行解压缩看看。

    范例:将刚刚的文件给他在 /root/ 目录下解开
    [root@www ~]# cpio -idvc < /tmp/boot.cpio
    [root@www ~]# ll /root/boot
    # 你可以自行比较一下 /root/boot 与 /boot 的内容是否一模一样!
  • 相关阅读:
    99%的人没使用过它俩,Docker最佳实践+2
    kubernetes 中 kubeconfig 的用法
    jenkins批量修改配置文件
    记一次K8s排错实战
    记一次失败记录: MindSpore1.3.0 GPU 源码安装 —— Ubuntu18.04系统 (最终安装结果为失败)
    【转载】 使用Python的ctypes查看内存
    (摘抄) 源码分析multiprocessing的Value Array共享内存原理
    (续) python 中 ctypes 的使用尝试
    python 中 ctypes 的使用尝试
    深度强化学习算法(深度强化学习框架)为考虑可以快速适用多种深度学习框架建议采用弱耦合的软件设计方法——快速适用于多种深度学习计算框架的深度强化学习框架设计方案
  • 原文地址:https://www.cnblogs.com/FengGeBlog/p/10390068.html
Copyright © 2011-2022 走看看