Debian 系统对拷迁移
Debian 安装在 U 盘,现在需要将系统完整拷贝到另外一个 U 盘并引导启动。
准备新 U 盘
使用 GParted 为新 U 盘创建 ext4
分区,分区前面保留 2MB
空间。
同步方式一:rsync
将两个系统分区如 /dev/sdc1
/dev/sdd1
分别挂载到 /mnt/dest
和 /mnt/source
。
$ sudo rsync -aHAXE --delete-during /mnt/source/ /mnt/dest/
同步方式二:FSArchiver
备份系统
假设系统在 U 盘的 /dev/sda1
分区,将其备份到当前目录:
$ sudo fsarchiver savefs ~/backup-190629.fsa /dev/sda1
恢复系统
将备份恢复到新 U 盘:
$ sudo fsarchiver restfs ~/backup-190629.fsa id=0,dest=/dev/sdc1
安装 grub
在 LiveCD 中挂载新U盘分区,并进入 chroot 环境。
# mount /dev/sda1 /mnt
# for i in /dev /dev/pts /proc /run /sys; do mount -B $i /mnt$i; done
# chroot /mnt
查看设备 PARTUUID
chroot# blkid
/dev/sda1: UUID="f91eb491-c446-4928-83aa-4cffac77c6d1" TYPE="ext4" PARTUUID="6923f823-01"
编辑 grub 配置文件
chroot# nano /etc/default/grub
GRUB_DISABLE_LINUX_UUID=true
GRUB_DEVICE="PARTUUID=6923f823-01"
编辑 fstab 配置文件,将根分区的 UUID=xxx 替换成实际的 PARTUUID=6923f823-01
chroot# nano /etc/fstab
安装 grub
chroot# grub-install --target=i386-pc --root-directory=/ /dev/sda
更新 grub 配置文件
chroot# update-grub
卸载文件系统
# for i in /dev/pts /dev /proc /run /sys; do umount /mnt$i; done
会员讨论区