我安装了 arch linux,分区方案如下:
/dev/mapper/lvm-root -> /
/dev/mapper/lvm-home -> /home
/dev/mapper/lvm-opt -> /opt
/dev/mapper/lvm-pkg -> /var/cache/pacman/pkg
这样,我将启动到 archlinux live CD 并执行以下操作:
mount /dev/mapper/lvm-root /mnt
tar -czvf arch-root.tar.gz /mnt
umount /mnt
mount /dev/mapper/lvm-home /mnt
tar -czvf arch-home.tar.gz /mnt
umount /mnt
mount /dev/mapper/lvm-opt /mnt
tar -czvf arch-opt.tar.gz /mnt
umount /mnt
mount /dev/mapper/lvm-pkg /mnt
tar -czvf arch-pkg.tar.gz /mnt
umount /mnt
然后,我将备份这些软件包,使用新的分区方案(可能不是 lvm)清理磁盘,在磁盘上的第一个分区上安装 windows,并将这些软件包解压到 windows 分区后的分区中。对于启动,我将使用grub-install
archlinux CD。
我的问题是,这会起作用吗?
答案1
这应该可行,但有一些警告。一方面,要注意不同的 FS UUID;现代发行版经常通过 UUID 列出挂载/etc/fstab
,这将无法在创建新的 FS 和解压后继续存在(尽管它可能会dd
直接从一个块设备转移到另一个块设备)。另一方面,您需要重新调整 GRUB 才能启动,确保分别为 GRUB 和内核提供正确的选项set root
。root=
此外,您发布的文字命令行将包含tar.gz
文件中的路径,其中包括前缀/mnt
,这可能不是您想要的。为了避免这种情况,tar -czvf <filename> /mnt
请执行而不是cd /mnt; tar -czvf .
。 (否则,你会发现自己解压它们并将所有内容都放在/mnt
新卷中。)
答案2
是的;这正是备份和恢复系统的方式。