0

我用 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 命令完成,挂载的分区也显示为空白?

4

1 回答 1

1

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

如果您直接在其背后写入磁盘,Linux 将不会注意到(更重要的是,它会假设这不会发生——如果您尝试修改已挂载的文件系统,它可能会变得非常困惑。)

因此,正确的程序如下:

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

再次为/dev/xvdl.

于 2013-03-14T06:57:49.817 回答