最初的问题是这样的:我想测试我为我的应用程序创建的安装程序,但当然每次运行安装程序时它都会修改系统,我需要一种方法将系统重置为干净状态以进行下一次测试。
我最初的解决方案是这样的:我在硬盘上创建了一个小分区 (/dev/sdb3),并在其中安装了 Ubuntu 14.04。然后我创建了第二个小分区 (/dev/sdb4),并执行了“dd”将 sdb3 复制到 sdb4。我的想法是在 sdb4 上测试我的安装程序,然后在运行下一个测试之前通过从 sdb3 执行另一个 dd 来重置 sdb4。
我将 grub 设置为多重启动(这样我可以选择我原来的 Ubuntu 分区,或者“干净”分区 sdb3,或者测试分区 sdb4)。
我现在遇到的问题是:当我运行 grub 时,它会给我所有正确的选项,但如果我要求启动到 sdb4,我得到 sdb4 还是 sdb3 的概率大约是 50/50。我猜 grub 没有使用分区名称,而是使用 Ubuntu 安装中的某种 UID(因此 sdb3 和 sdb4 看起来相同)?
附注:无论我启动到 sdb3 还是 sdb4,当我运行 gparted 时,sdb3 和 sdb4 都显示为被锁定。
从 sdb3 添加后,我需要对 sdb4 做些什么,以便它与 sdb3 明显不同?
谢谢,克里斯
答案1
dd
是的,重复的 uuid 会使系统混乱。这就是为什么你不应该这样玩的原因之一。另一个原因是dd
复制可用空间会浪费时间。如果你想备份和恢复系统,请使用tar
。如果你坚持使用dd
,那么不要复制到第二个分区——而是复制到文件。