使用“dd”捕获并恢复失败?
问题描述:
我用dd来捕捉这样的两个本地虚拟机分区...使用“dd”捕获并恢复失败?
# dd if=/dev/sda1 | gzip >mySda1.gz
# dd if=/dev/sda2 | gzip >mySda2.gz
然后接上足够大小的两卷到一个已经运行的实例并安装它们(为/ mnt /之一,到/ mnt /二),然后复制.gz文件解到实例,并使用这些命令来恢复分区
# gunzip –c mySda1.gz | dd of=/dev/xvdk
# gunzip –c mySda2.gz | dd of=/dev/xvdl
gunzip命令不显示故障,但是当我然后去到/ mnt /一个问题命令LS -a没有什么。为什么是这样? .gz文件非常大。为什么挂载的分区显示为空白,即使gunzip命令完成?
答
在您可以直接写入分区之前,您必须先确保它已被卸载。
Linux不会注意到你是否直接写入后面的磁盘(更重要的是,会认为这不会发生 - 如果尝试修改已挂载的文件系统,它可能会变得非常混乱)。
所以,正确的程序是如下:
umount /dev/xvdk
gunzip –c mySda1.gz | dd of=/dev/xvdk
mount /dev/xvdk
为
/dev/xvdl
又一遍。
只是为了确认:你卸载了'/ dev/xvdk'和'/ dev/xvdkl',写在它们上面,成功地重装了它们,但仍然没有发现任何东西?或者在覆盖它们之前忘记卸下分区?后者会造成严重的混乱,只会混淆Linux内核。 – davidg 2013-03-14 03:34:25
没问题---我会将评论转换为答案。 – davidg 2013-03-14 06:57:59