当前位置:   article > 正文

6.2.6、restore:还原 dump 操作备份下的文件、目录或分区_如何修改dump文件,再恢复成修改后的dump文件

如何修改dump文件,再恢复成修改后的dump文件

关注公众号 “融码一生”,领取全套 PDF / 电子书

  • restore 命令是 dump 命令的配套命令,dump 命令用来备份分区和数据,而 restore 命令用来恢复数据。基本格式:
    • restore [模式选项] [-f]
      • -f 选项:指定备份文件的文件名
      • 模式选项有以下 4 种(不能混用):
        • -C:比较备份数据和实际数据的变化
          • 如果实际数据中的现有数据发生了变化,该选项能检测出来
          • 如果实际数据中新增了数据,则该选项不能检测到变化
        • -i:进入交互模式,手工选择需要恢复的文件
        • -t:查看模式,用于查看备份文件中拥有哪些数据
        • -r:还原模式,用于数据还原

示例 1:比较备份数据和实际数据的变化

  1. # 在 /boot/ 目录中新建 abc 文件
  2. touch /boot/abc
  3. # restore 检测, 没有发现任何变化(因为备份数据在备份时没有 abc 文
  4. # 件,所以 restore 命令是不能识别新建文件的)
  5. restore -C -f /root/boot.bak.bz2
  6. :<<!
  7. Dump tape is compressed.
  8. Dump date:Wed Jun 5 082002 2013
  9. Dumped from:the epoch
  10. Level 0 dump of /boot on localhost:/dev/sda1
  11. Label:none
  12. filesys = /boot
  13. !
  14. # 把 /boot/ 目录中的内核镜像文件改一个名字
  15. mv /boot/vmlinuz-2.6.32-279.el6.i686 /boot/vmlinuz-2.6.32-279.el6.i686.bak
  16. # restore 发现内核镜像文件丢失
  17. restore -C -f /root/boot.bak.bz2
  18. :<<!
  19. Dump tape is compressed.
  20. Dump date:Wed Jun 5 082002 2013
  21. Dumped from:the epoch
  22. Level 0 dump of /boot on localhost:/dev/sda1
  23. Label:none
  24. filesys = /boot
  25. restore:unable to stat ./vmlinuz-2.6.32-279.el6.i686No such file or directory Some files were modified! 1 compare errors
  26. !
  • 这个实验比较危险,一定要记得把内核镜像文件的名字改回来,否则重启后系统无法正常启动。
mv /boot/vmlinuz-2.6.32-279.el6.i686.bak /boot/vmlinuz2.6.32-279.el6.i686

示例 2:查看模式(查看备份文件中到底包含什么内容)

  1. restore -t -f boot.bak.bz2
  2. :<<!
  3. # 备份数据是压缩的
  4. Dump tape is compressed.
  5. # 数据备份时间
  6. Dump date:Wed Jun 5 082002 2013
  7. Dumped from:the epoch
  8. # 备份等级
  9. Level 0 dump of /boot on localhost:/dev/sda1
  10. # 分区的卷标,没有设定卷标
  11. Label:none
  12. 2.
  13. 11 ./lost+found
  14. 12 ./grub
  15. 24 ./grub/grub.conf
  16. 13 ./grub/splash.xpm.gz
  17. …省略部分输出…
  18. !

示例 3:还原模式(还原整个分区、还原文件或目录)

  • 注意:如果要还原增量备份的数据,则一定要先还原完全备份的数据
  1. # 还原 boot.bak.bz2 分区备份
  2. # 先还原完全备份的数据
  3. # 建立准备解压缩的目录。当然,如果这个目录是我新建的分区,就可以直接把数据恢复到分区中
  4. mkdir boot.test
  5. # 进入解压缩目录
  6. cd boot.test/
  7. # 解压缩
  8. restore -r -f /root/boot.bak.bz2
  9. :<<!
  10. # 备份数据是压缩数据
  11. Dump tape is compressed.
  12. !
  13. # 查看一下解压缩的文件
  14. ll
  15. :<<!
  16. 总用量21300
  17. -rw-r--r--. 1 root root 106611 622 2012 config-2.6.32-279.el6.i686 drwxr-xr-x. 3 root root 4096 410 21:47 efi drwxr-xr-x. 2 root root 4096 410 21:49 grub
  18. -rw-r--r--. 1 root root 14708399 410 21:49 initrara£s-2.6.32-279.el6.i686.img
  19. drwx------. 2 root root 4096 410 21:44 lost+found
  20. -rw-------. 1 root root 47504 65 09:44 restoresymtable
  21. -rw-r--r--. 1 root root 175903 622 2012 symvers-2.6.32-279.el6.i686.gz
  22. -rw-r--r--. 1 root root 1846041 622 2012 System.map-2.6.32-279.el6.i686
  23. -rw-r--r--. 1 root root 1048576 65 02:38 test
  24. -rwxr-xr-x. 1 root root 3856608 622 2012 vmlinuz-2.6.32-279.el6.i686
  25. !
  26. # 再还原增量备份的数据
  27. restore -r -f /root/boot.bakl.bz2
  28. :<<!
  29. # 恢复增量备份的数据
  30. Dump tape is compressed.
  31. !
  32. ll
  33. :<<!
  34. 总用量21328
  35. -rw-r--r--. 1 root root 106611 622 2012 config-2.6.32-279.el6.i686
  36. drwxr-xr-x. 3 root root 4096 410 21:47 efi
  37. drwxr-xr-x. 2 root root 4096 410 21:49 grub
  38. -rw-r--r--. 1 root root 14708399 410 21:49 initramfs-2.6.32-279.eX6.i686.img
  39. -rw-r--r--. 1 root root 24772 65 08:20 install. log
  40. #增量备份的install.log文件被恢复了
  41. drwx------. 2 root root 4096 410 21:44 lost+found
  42. -rw-------. 1 root root 47552 65 09:57 restoresymtable
  43. -rw-r--r--. 1 root root 175903 622 2012 symvers-2.6.32-279.el6.i686.gz
  44. -rw-r--r--. 1 root root 1846041 622 2012 System.map-2.6.32-279.el6.i686
  45. -rw-r--r--. 1 root root 1048576 65 02:38 test
  46. -rwxr-xr-x. 1 root root 3856608 622 2012 vmlinuz-2.6.32-279.el6.i686
  47. !
  • 还原/etc/目录的备份etc.dump.bz2,其实还原的方法是完全一样的:
  1. # 还原 etc.dump.bz2 备份
  2. restore -r -f etc.dump.bz2
  3. :<<!
  4. Dump tape is compressed.
  5. !
  6. # 在 root 下生成了 etc 目录, 里面的数据和/etc/目录中的数据完全一致
  7. ll -d /root/etc
  8. :<<!
  9. drwxr-xr-x.103 root root 12288 65 0745 /root/etc
  10. !

关注公众号 “融码一生”,领取全套 PDF / 电子书

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/寸_铁/article/detail/866001
推荐阅读
相关标签
  

闽ICP备14008679号