使用 tar 备份整个 Linux 系统

使用 tar 备份整个 Linux 系统

  https://www.cnblogs.com/zh-geek/p/16931650.html 

基本用法:

tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --one-file-system /

选项解释:

    c            创建归档

    v            啰嗦模式,打印详细的压缩过程

    p            保持文件的权限,以便将来恢复

    z           指定用 gzip 压缩

    f  <filename>     指定备份文件名

    --exclude=        指定要排除的文件或目录,至少要排除掉备份文件本身

    --one-file-system    只备份根目录,排除掉所有别的文件系统,包括挂载的其它分区。

                        例如:/home /sys /proc /run /dev /media

    /            指定备份的目标,这里就是根目录

tar 的选项可以以短横开头,也可以省略短横。如果使用了短横的话,f选项必需位于最后,后面跟着压缩文件名。它实际上是参数,而不是选项。

变形, 使用 xz 或 bzip2 压缩:

tar -cvpjf backup.tar.xz --exclude=/backup.tar.xz --one-file-system /

如果 /home, /boot 等目录位于不同的分区,使用 --one-file-system 会将它们排除掉,如果要包含这些目录,只能省略掉 --one-file-system 选项,再用 --exclude 分别指定要排除的目录:

cd /                              # 这一步很重要,下面的长命令行假定从 / 运行

tar -cvpzf backup.tar.gz \

--exclude=/backup.tar.gz \

--exclude=/proc \

--exclude=/tmp \

--exclude=/mnt \

--exclude=/dev \

--exclude=/sys \

--exclude=/run \

--exclude=/media \

--exclude=/var/log \

--exclude=/var/cache/apt/archives \

--exclude=/usr/src/linux-headers* \

--exclude=/home/*/.gvfs \

--exclude=/home/*/.cache \

--exclude=/home/*/.local/share/Trash /

恢复:

用 Live CD 或其它方式开机,在文件管理器中点击将要恢复的根分区,通常它会自动挂载在 /media目录下面。

sudo tar -xvpzf /path/to/backup.tar.gz -C /media/whatever --numeric-owner

--numeric-owner恢复文件原来的权限

如果创建归档时没有使用--one-file-system选项,且归档中包含了另外分区中的文件,比如 /boot /home,则在恢复前需要先手动创建目录并挂载相应的分区,再进行恢复。

恢复完成后,可能还需要创建归档文件中没有包含的目录

mkdir proc sys mnt media

修复 GRUB

sudo -s

for f in dev dev/pts proc ; do mount --bind /$f /media/whatever/$f ; done

chroot /media/whatever

dpkg-reconfigure grub-pc

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值