linux 系统全盘恢复

恢复备份

一、准备

1. 从 u盘启动,进入 live-cd 系统,配置好网络和镜像源,更新一下仓库的数据库。

sudo pacman -Syy

2. 安装 timeshift 这个软件。

sudo pacman -S yaourt

sudo yaourt -S timeshift

二、对硬盘进行分区

使用 gparted 分区工具。

三、开始恢复备份

根据 timeshift --help 的说明,执行以下命令:

timeshift --restore --snapshot-device /dev/sdbx

之后会出现一些选项,按照提示进行操作就可以了。

四、修复引导(参考

1.挂载刚刚恢复完成的文件系统(sdx 是你恢复的硬盘,可能为 sda, sdb, sdc..执行 fdisk -l 查看)

sudo mount /dev/sdx /mnt

sudo arch-chroot  /mnt

2.修复 efi 引导

挂载 efi分区到目录 esp_mount (通常为 /boot/efi)

mount /dev/sdbx esp_mount

安装 grub

grub-install --target=x86_64-efi --efi-directory=esp_mount --bootloader-id=antergos_grub

重新生成 /boot/grub/grub.cfg 配置文件

grub-mkconfig -o /boot/grub/grub.cfg

报错:WARNING: Failed to connect to lvmetad. Falling back to device scanning。可以忽略 或者 Edit your /etc/lvm/lvm.conf and set use_lvmetad = 0

四、测试

准备另一个u盘,尝试将刚才备份的系统恢复到这个 u盘设备上。该 u盘容量需要大一点,防止空间不足恢复失败。

2 partition, gpt table, efi flag.

fdisk -l

sudo timeshift --list --snapshot-device /dev/sdc2

sudo timeshift --restore --snapshot-device /dev/sdc2 --target-device /dev/sdb2 --grub-device /dev/sdb

上一篇:Hash算法的讲解


下一篇:解Bug之路-串包Bug