我有一个pendrive,我在其他系统中恢复由dd命令制作的图像。 当我恢复图像时,我总是必须做一个fsck。 可能的是,当我生成图像时,源系统已损坏,或者我恢复图像文件时损坏了pendrive? 非常感谢和抱歉我的英语!
答案 0 :(得分:1)
要知道数据是否有损坏,在创建图像时,应计算checksum(md5sum或sha1)。
# dd if=/dev/sdb of=my_image.img # --> here you create your image
# md5sum /dev/sdb # --> here you compute your checksum
e2985322ca0ed3632027a6eb8fe70ae8 /dev/sdb
# md5sum my_image.img # --> check the integrity of the image
e2985322ca0ed3632027a6eb8fe70ae8 my_image.img
因此,当您闪存到另一台设备,另一台计算机或任何系统时,您可以检查数据的完整性。
# dd if=my_image.img of=/dev/hdc # --> here you flash your image to a device
# md5sum /dev/hdc # --> check the integrity of the flashed data
e2985322ca0ed3632027a6eb8fe70ae8 /dev/hdc
当然,这里获得的哈希只是一个例子,但对于相同的数据它总是相同的。如果任何字节被改变,则校验和将完全不同。
显然,如果您使用dd
复制到某个设备(即使是),请确保使用mount | grep /dev/hdc
之类的内容未安装,如果您想要闪烁dev/hdc
则不返回任何内容设备。
答案 1 :(得分:0)
这只是猜测,因为您没有提供有关图像创建的大量信息,但是,在拍摄图像时文件系统可能处于不洁净状态。文件系统也可能在那个时间点仍然挂载 - 在拍摄图像之前总是卸载文件系统(或将其挂载为只读)。