如何制作整个 USB 闪存驱动器的映像?

如何制作整个 USB 闪存驱动器的映像?

下面的消息来自另一个帖子我按照他们所说的方式尝试了。首先,我安装了 USB 驱动器:

sudo mount -o ro,noexec /dev/sdb1 /media

我将其安装为只读,以防止在复制时对 USB 造成任何损坏或更改,特别是如果我混淆了ifof.在下面的消息中,我不确定他们是否希望我使用sdbor sdb#for if

在尝试任何恢复之前,我会通过逐块备份整个设备来保存当前状态:dd if=/dev/sdb bs=16M of=/somelargedisk/rawusbdrive其中 /dev/sdb 是您的 USB 驱动器(使用 lsblk 检查哪一个), /somelargedisk/rawusbdrive 是您选择的路径和文件名具有大量空间的磁盘/分区。然后,如果写入磁盘的恢复工具造成的损坏比修复更大,您可以返回(交换 if 和 of 字段)。”

答案1

备份整个驱动器的最佳方法是 via,dd因为与使用 相比,您可以更好地控制块设备的缓冲区大小cat。当 USB 驱动器处于未安装,请运行,如下所示root

  dd if=/dev/sdb bs=16M of=/somelargedisk/rawusbdrive

您的 USB 驱动器在哪里/dev/sdb(使用 检查哪个驱动器lsblk),/somelargedisk/rawusbdrive是您在具有大量空间的磁盘/分区上选择的路径和文件名。

您可以通过交换ifof参数来恢复该备份dd

请注意: dd如果您的参数错误,可以轻松覆盖您的所有数据而无法修复(通过合理的努力)!

这是我在对您的其他问题的评论中首次提到的 用于从 USB 闪存驱动器删除的文件的最佳 Linux 恢复工具?

答案2

/dev/sdb是整个U盘,/dev/sdb1是磁盘上的一个分区。如果您想对整个磁盘进行映像,则需要/dev/sdb.

也就是说,在这种情况下,安装为只读不会对您有任何帮助。您将绕过文件系统(这是只读效果所在)并直接使用块设备。因此,如果你混淆了io,无论如何你都会毁掉磁盘。

这里没有什么太大的好处dd,你也可以使用cat:

sudo cat /dev/sdb > /somelargedisk/rawusbdrive

(或者pv为了更好地显示进度。)

相关内容