使用“dd”捕获和恢复失败?

时间:2013-03-14 01:55:14

标签: amazon-ec2 linux-kernel vmware dd gunzip

我使用dd捕获这样的两个本地vm分区......

# dd if=/dev/sda1 | gzip >mySda1.gz 
# dd if=/dev/sda2 | gzip >mySda2.gz

然后我将两个足够大的卷附加到已经运行的实例并安装它们(作为/ mnt / one和/ mnt / two),然后将.gz文件复制到实例并使用这些命令恢复分区

# gunzip –c mySda1.gz | dd of=/dev/xvdk
# gunzip –c mySda2.gz | dd of=/dev/xvdl

gunzip命令没有显示失败,但是当我转到/ mnt / one并发出命令 ls -a 时,没有任何内容。为什么是这样? .gz文件非常大。即使gunzip命令完成,为什么挂载的分区显示为空白?

1 个答案:

答案 0 :(得分:1)

在直接写入分区之前,必须首先确保它已卸载。

如果直接写入其背后的磁盘,Linux将不会注意到(更重要的是,假设这不会发生 - 如果您尝试修改已安装的文件系统,它可能会非常混乱。)< / p>

因此,正确的程序如下:

umount /dev/xvdk
gunzip –c mySda1.gz | dd of=/dev/xvdk
mount /dev/xvdk

再次为/dev/xvdl