可以对USB启动盘运行完整性检查吗?

有没有办法在即用型USB启动盘上执行完整性检查?

我刚刚制作了一个Lubuntu 14.04.01启动USB,并且无法弄清楚如何对其进行完整性检查。 我找不到任何.iso文件来运行MD5sum哈希。

你可以在这里找到Ubuntu iso的md5sum。

上面的md5值是整个磁盘的校验和,而不是单个文件的校验和。

准备可启动USB时,iso文件中的文件将被复制到USB,并且USB的引导程序将被覆盖,从而使其可启动 。 你看到这里,一个单独的文件(对于ex,lubuntu 14.04.1 x64 iso)和一个md5总和( a5f97cd6a9f171c70cf816de8728f13b )现在被破坏,而USB中存在多个文件。 因此,您不再需要iso来比较原始的lubuntu iso的md5总和。

如果要检查每个单个文件的完整性,则需要从USB启动,然后从启动菜单中选择check cd for defects 。 每个ubuntu iso中都有一个ms5sum.txt文件,其中包含iso中每个文件的md5sum。 check cd for defects选项使用iso中存在的md5列表validation每个文件的md5sum。

从LiveWireBT的回答中 ,只需导航到USB驱动器并运行md5sum -c md5sum.txt对各个文件执行一致性检查。

ISO映像中包含的各个文件的哈希值作为md5sum.txt存储在根文件夹中。

在同一文件夹中运行md5sum -c md5sum.txt应执行一致性检查。

我的回答是基于Lucas在Unix和Linux StackExchange中的答案 。 要检查USB启动盘的完整性,首先要查找iso映像的大小

  stat -c '%s' imagename.iso 

这将输出一个图像尺寸,您可以在下面的命令中输入该图像尺寸来代替 。 下一个命令(通过管道)将与图像大小相对应的所有字节发送到md5sum命令:

 sudo head -c  /dev/sdb1 | md5sum 

您可以将其与.iso文件的md5sum进行比较。

 md5sum imagename.iso 

如果md5sums不同,则复制数据时出现问题。 如果md5sums相同,则表明您已成功检查USB磁盘上的数据完整性!

关于在/dev/下定位usb设备的注意事项

对于上面的命令,您需要知道USB设备的名称,例如/dev/sdbX ,而不是挂载点(例如/media/usbX )。 您可以通过查看df输出中的Filesystem列来查找。 例如,我的usb设备在输出中显示为/dev/sdb1

 df 

不知道Linux Mint ISO是否使用与vanilla Ubuntu ISO相同的grub菜单,但我现在只是安装而且出现的grub菜单有:

check the integrity of the medium

花了10分钟跑,发现了69个错误。 我检查了我下载的iso图像是好的,所以我现在正在尝试不同的USB记忆棒。

这是GNU GRUB version 2.02^beta2-36ubuntu3