为什么我的 USB 硬盘返回 SG_IO:坏的/丢失的感知数据?

为什么我的 USB 硬盘返回 SG_IO:坏的/丢失的感知数据?

我能够从外部 USB 硬盘启动并运行命令;相关消息出现约 45 秒,然后启动继续。GRUB2 安装在内部硬盘上。当选择直接启动到 /dev/sdb 时,不会出现该消息,但启动时间与启动到内部硬盘大致相同。

/dev/sdb:
 Timing cached reads:   1018 MB in  2.00 seconds = 508.97 MB/sec
 Timing buffered disk reads:  80 MB in  3.03 seconds =  26.37 MB/sec
pfeiffep@de:~$ sudo hdparm -i /dev/sdb


/dev/sdb:
SG_IO: bad/missing sense data, sb[]:  70 00 05 00 00 00 00 10 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 HDIO_GET_IDENTITY failed: Invalid argument

Gparted 正确地将驱动器识别为 SAMSUNG MP0402H。

有什么想法可以解决 HDIO 和 SG_IO 消息问题吗?

答案1

如果某些 USB 大容量存储设备无法理解数据,就会返回此信息。

我有一个 lexar 8 合 1 读卡器,在某些 SDxc 卡上,当从 debian palimpset 进行写入操作时,读卡器就会因该错误而死机。然后该卡将永远在该读卡器上出现该错误。

如果我把卡放在更智能/更少错误的阅读器上并格式化,那么 lexar 阅读器将再次读取它而不会出现问题。

我从来没有浪费时间去找出卡内存中的哪些数据会触发该行为。但我 100% 确定它只是数据。也许是缺少分区模式?不知道......但显然,除了困扰读卡器的几种 SD 子格式不兼容之外,我们还不必担心疯狂的分区格式。

所以原因是:虚假数据写入了你的分区记录/引导扇区/SD 卡中的任何内容。

解决方案是将卡/驱动器/任何用于内存的东西插入另一个 USB 大容量存储转换器设备并在那里创建一个分区。然后你的问题就解决了。

如果它是一个单片设备,即在同一块电路板上有内存芯片和 USB 大容量存储转换器的设备……那么您就会遇到更大的问题,因为现在没有简单的方法来解决这个问题。

相关内容