如何获得一个Linux映像,并在另一台计算机上恢复

我正在尝试使用dd命令在新计算机上完成对Linux映像的完整还原。 我有两个分区sda1(主)和sda2(扩展),我采取了一个mbr图像备份使用:

dd if=/dev/sda of=/mnt/sdb1/mbr_image bs=512 count=1 

和dbr图像如下:

 dd if=/dev/sda2 of=/mnt/sdb1/ebr_image bs=512 count=1 

我还使用了主分区(我想要还原的分区)的备份:

 dd if=/dev/sda1 of=/mnt/sdb1/sda1_image 

我用slax光盘打开新系统,首先恢复以前备份的mbr和ebr镜像(我没有使用446字节,因为我想恢复分区表)

 dd if=/mnt/sdb1/mbr_image of=/dev/sda dd if=/mnt/sdb1/ebr_image of=/dev/sda2 

之后,我恢复主分区:

 dd if=/mnt/sdb1/sda1_image of=/dev/sda1 

一旦完成,我使用以下一组命令调整主分区大小:

 umount /dev/sda1 e2fsck -f /dev/sda1 resize2fs /dev/sda1 -p 

在此之后,我重新启动计算机希望我恢复正确的一切。 不幸的是,当我这样做的硬盘驱动器从来没有使用过的新计算机上,计算机卡在GRUB引导加载程序说GRUB …

我怀疑有一些特定于mbr映像的机器,因为如果我在机器上运行相同的恢复过程,那么一切正常,机器正常启动。

你能否介绍一下我在过去两天做错了什么?

我知道这是一个解决scheme,迫使你从一开始就做所有的工作,但我会build议使用Clonezilla进行备份并将其恢复到新机器上。 特别是如果你需要在许多机器上恢复映像

我会尝试你想要做的partimage。 dd是一个粗略的,复制字节的字节。 一个500演出高清将=一个500演出的形象。 你不会有partimage这个问题。

另外运行一个partimage服务器可以让你快速的在多台电脑上恢复这个镜像。

希望这可以帮助。 我知道它不是一个dd的答案。

你尝试重新安装grub新的sda?

旧的和新的磁盘是相同的大小? 如果是的话,dd整个磁盘,它应该工作。

如果没有,你可以用rsync或tar传输文件,并使用livecd重新安装grub。