web-dev-qa-db-ja.com

マウントを解除した後、USBハードドライブが機能しなくなる原因は何ですか?

最近、Linuxノートブックで使用する外付けハードドライブを購入しました。ハードドライブはUSB3.0で仕様が定められていますが、ノートブックはUSB2.0のみをサポートしています。

ドライブを接続すると、正常に動作しているようです。これは、/ var/log/messagesの関連セクションです。

Jun 17 20:36:53 mosquito kernel: usb 1-4: new high-speed USB device number 8 using ehci_hcd
Jun 17 20:36:53 mosquito kernel: scsi8 : usb-storage 1-4:1.0
Jun 17 20:36:53 mosquito mtp-probe: checking bus 1, device 8: "/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-4"
Jun 17 20:36:53 mosquito mtp-probe: bus: 1, device: 8 was not an MTP device
Jun 17 20:36:59 mosquito kernel: scsi 8:0:0:0: Direct-Access     BUFFALO  HD-PNTU3         0001 PQ: 0 ANSI: 6
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: Attached scsi generic sg1 type 0
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] 1953463728 512-byte logical blocks: (1.00 TB/931 GiB)
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] Write Protect is off
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] Mode Sense: 1f 00 00 08
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] No Caching mode page present
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] Assuming drive cache: write through
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] No Caching mode page present
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] Assuming drive cache: write through
Jun 17 20:36:59 mosquito kernel: sdb: sdb1
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] No Caching mode page present
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] Assuming drive cache: write through
Jun 17 20:36:59 mosquito kernel: sd 8:0:0:0: [sdb] Attached SCSI disk
Jun 17 20:36:59 mosquito ata_id[7293]: HDIO_GET_IDENTITY failed for '/dev/.tmp-block-8:16'
Jun 17 20:37:16 mosquito ntfs-3g[7305]: Version 2012.1.15 external Fuse 28
Jun 17 20:37:16 mosquito ntfs-3g[7305]: Mounted /dev/sdb1 (Read-Write, label "HD-PNTU3", NTFS 3.1)
Jun 17 20:37:16 mosquito ntfs-3g[7305]: Cmdline options: rw,nosuid,nodev,uhelper=udisks
Jun 17 20:37:16 mosquito ntfs-3g[7305]: Mount options: rw,nosuid,nodev,uhelper=udisks,allow_other,nonempty,relatime,fsname=/dev/sdb1,blkdev,blksize=4096
Jun 17 20:37:16 mosquito ntfs-3g[7305]: Ownership and permissions disabled, configuration type 7

ファイルをドライブにコピーできますが、すべて正常に動作しているようです。ただし、ドライブをアンマウントするとすぐに、次のログ出力が表示されます。

Jun 17 20:37:23 mosquito ntfs-3g[7305]: Unmounting /dev/sdb1 (HD-PNTU3)
Jun 17 20:37:23 mosquito ata_id[7324]: HDIO_GET_IDENTITY failed for '/dev/sdb'
Jun 17 20:37:24 mosquito kernel: sd 8:0:0:0: [sdb] Device not ready
Jun 17 20:37:24 mosquito kernel: sd 8:0:0:0: [sdb]  Result: hostbyte=0x00 driverbyte=0x08
Jun 17 20:37:24 mosquito kernel: sd 8:0:0:0: [sdb]  Sense Key : 0x2 [current] 
Jun 17 20:37:24 mosquito kernel: sd 8:0:0:0: [sdb]  ASC=0x3a ASCQ=0x0
Jun 17 20:37:24 mosquito kernel: sd 8:0:0:0: [sdb] CDB: cdb[0]=0x28: 28 00 74 6f 7d 00 00 00 08 00
Jun 17 20:37:24 mosquito kernel: end_request: I/O error, dev sdb, sector 1953463552
Jun 17 20:37:24 mosquito kernel: quiet_error: 200 callbacks suppressed
Jun 17 20:37:24 mosquito kernel: Buffer I/O error on device sdb, logical block 244182944

これは、logical block部分の後に値を変更して繰り返され、場合によってはBuffer I/O error [...]行なしで繰り返されます。

ドライブを再度マウントしようとすると、エラーが再度繰り返され、マウントにより、スーパーブロックを読み取れないことが示されます。ドライブを抜き差しした後、問題は解消されます。

何が原因でしょうか?これはおそらくドライバまたは互換性の問題ですか、それともディスクに障害がありますか?どうすればこれを確認できますか?

4
Jannik Jochem

ドライブをイジェクトすると、ほとんどのUSBストレージデバイスはこのように動作します。

コマンドラインを使用して自分でパーティションをアンマウントしますか、それとも「ドライブのアンマウント/イジェクト」をクリックしますか?

パーティションをアンマウントするだけでは問題は発生しませんが、パーティションをイジェクトすると、切断して再接続しない限り、再マウントできなくなります。

partprobeを使用して、ドライブのマウント可能性(!)を「リセット」できます。 'parted'パッケージに含まれています。

通常、リセットを実行するにはrootとして実行する必要があります(まあ、それはリセットのようなものです)。

Sudo partprobe

接続されているすべてのデバイスを更新します

Sudo partprobe /dev/sdc

sdcデバイスのパーティションをリセット/更新します。

2
lornix