Linux 写保护紧凑型闪存的特定问题

Linux 写保护紧凑型闪存的特定问题

我的 4GB ATP 工业级紧凑型闪存卡遇到版本奇怪的问题。我正在尝试将其用作 ALIX 单板 PC 的启动存储。

当我将其插入另一台 Linux 机器时,我看到:

[  421.320908] scsi 3:0:0:0: Direct-Access     eUSB     Compact Flash    5.06 PQ: 0 ANSI: 2
[  421.331377] sd 3:0:0:0: Attached scsi generic sg2 type 0
[  422.670588] sd 3:0:0:0: [sdb] 7847280 512-byte logical blocks: (4.01 GB/3.74 GiB)
[  422.700420] sd 3:0:0:0: [sdb] Write Protect is on
[  422.700424] sd 3:0:0:0: [sdb] Mode Sense: 00 77 bd 6f

然后,当我尝试使用它进行任何类型的写操作时,我得到:

dd: failed to open ‘/dev/sdb’: Read-only file system

到目前为止我尝试过的事情:

  • 上面似乎没有任何物理写保护开关
  • 我可以在 Mac 上重新格式化、写入文件并读取它们
  • 我已成功将 Mac 上的整张卡清零 ( dd if=/dev/zero of=/dev/disk1 bs=10m)
  • 我尝试使用 hdparm 禁用只读模式 ( hdparm -r0 /dev/sdb),这不会出错,但也不会禁用写保护。
  • 我使用其他紧凑型闪存卡时没有任何这些问题 - 但我想使用这个,因为它更大 - 并且应该更好,因为它是工业级的。

在我的主 Linux 机器上,我使用 Debian 8 (Jessie) 和 Linux 内核版本 3.16.0-7-amd64。

感觉就像对紧凑型闪存应用了某种软写保护锁,似乎只有 Linux 才能理解。

有没有人有任何其他想法可以尝试什么,或者可能有什么问题?

答案1

也许您可以使用此特定设备的 usb_storage 驱动程序的怪异模式来修复此问题,请参阅https://askubuntu.com/a/1088434

如果您必须使用怪异模式,这可能意味着紧凑型闪存卡的行为与(大多数)其他 CF 卡不同。

相关内容