Ubuntu 16.04 备份与恢复记录

过去用Ubuntu系统没有备份的习惯, 也没出什么问题。但是前几日不知怎么搞的, 开不了机了, 由于没有备份,无奈只能重装系统。遂今日把备份过程记录一下, 以便日后查阅。

1.清理缓存

# 清理旧版本的软件缓存
sudo apt-get autoclean

# 清理所有软件缓存
sudo apt-get clean

# 删除系统不再使用的孤立软件
sudo apt-get autoremove

2.使用tar备份

  • 命令及参数解释
    v: 显示详细的压缩信息
    c:创建tar包
    j:使用bzip2压缩格式 (压缩率略高,但是速度慢,后缀为:tar.bz2)
    z:使用gzip压缩格式(压缩率略低,但是速度快,后缀为:tar.gz)
    p:保留文件原始权限
    f:生成的压缩文件的路径

  • 要排除的文件
    /proc
    /lost+found
    /sys
    /cdrom
    /mnt
    /media
    我把/home下cavalry(用户目录)之外的目录都排除了(根据自己情况选择 ,需要备份就不要排除)
    排除打包文件自身

  • 命令执行

#切换到root用户
sudo su

#进入到 / 目录
cd /

##打包
tar -cvpj -f /home/ubuntu_`date +%Y%m%d_%H`.tar.bz2 --exclude=/proc --exclude=/lost+found --exclude=/sys --exclude=/cdrom --exclude=/mnt --exclude=/media --exclude=/home/ide/ --exclude=/home/java/ --exclude=/home/WORKING_DIRECTORY/ --exclude=/home/workspace/ --exclude=/home/aosp-latest.tar --exclude=/home/ubuntu_`date +%Y%m%d_%H`.tar.bz2 /

解释一下这个命令:
tar : 这不用多说
-cvpj -f: 一些参数
/home/ubuntu_\date +%Y%m%d_%H`.tar.bz2:压缩后的文件名–exclude: 一些忽略文件/` : 一定不要忘记最后的 / , 代表被压缩的目录

3.打包过程中会遇到如下错误或警告信息

  • tar: Exiting with failure status due to previous errors
    这个问题其实不是真正的错误信息, 真正的错误信息混杂在标准输出(stout)中, 重新执行命令并把v参数去掉即可看到真正问题所在。

  • tar: Removing leading ’/‘ from member namestar: Removing leading ’/‘ from hard link targets
    这个问题其实不影响程序的执行,产生的原因是tar在压缩的过程中自动帮我们去掉了路径前的“/”,也就是tar压缩后的包是按照相对路径压缩的。 当我们恢复时, 就需要通过 -C 参数手动指定解压到 “/” 目录, 如:tar xvpfj ubuntu_20170120_11.tar.bz2 -C /
    可以使用-P参数来指定按照绝对路径打包:

tar -cpj -f /home/ubuntu_`date +%Y%m%d_%H`.tar.bz2 --exclude=/proc [...省略...] --exclude=/home/ubuntu_`date +%Y%m%d_%H`.tar.bz2 -P /

这样解压的时候就不需要使用 -C 来指定解压到哪个目录:tar xvpfj ubuntu_20170120_11.tar.bz2

  • tar: /dev/shm: file changed as we read ittar: /run/udev/control: socket ignored
    这个socket ignored产生的原因是压缩的过程中文件正在使用,无需理会,不影响压缩。

  • tar: /run/user/1000/gvfs: Cannot stat: Permission denied
    这个问题不用理会,与虚拟文件系统有关,不影响压缩。 具体原因参见:
    http://unix.stackexchange.com/questions/77453/why-cannot-find-read-run-user-1000-gvfs-even-though-it-is-running-as-root

  • 小结
    最后总结一下就是:压缩过程中碰到的这几个问题都不是问题。
    我刚装的Ubuntu 16.04 64bit, 经bzip2压缩后约为2.4G

4.恢复

tar xvpfj ubuntu_20170120_11.tar.bz2 -C /

5.tar的增量备份

参考这个博客, 楼主暂时还没用到增量备份, 此处留备后用.
http://lesca.me/archives/how-to-incrementally-backup-linux-with-gnu-tar.html

    原文作者:CavalryLin
    原文地址: https://www.jianshu.com/p/dd875cb28414
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞