Linux

無法辨識外部驅動器

  • September 25, 2020

我目前正在執行基本作業系統(基於 Ubuntu 的 Linux 作業系統,因此 Ubuntu 中的所有內容都可以在其中執行) - 使用 Windows 8 雙重啟動它。

我有一個 3TB 外置硬碟驅動器 (USB 3.0),插入時似乎無法辨識它。它在 Windows(7 和 8)下工作正常。

它使用 GPT 分區表並格式化為 NTFS。

當我插入它時,驅動器上的燈會閃爍,但它不會顯示在設備下,如果我執行 fdisk 或 gdisk,它們似乎只是凍結了。

使用dmesg我可以看到:

[ 1511.173737] usb 4-2: new SuperSpeed USB device number 6 using xhci_hcd
[ 1511.198057] scsi11 : usb-storage 4-2:1.0
[ 1512.198085] scsi 11:0:0:0: Direct-Access     ST3000DM 001-9YN166       CC4C PQ: 0 ANSI: 0
[ 1512.199618] sd 11:0:0:0: Attached scsi generic sg3 type 0
[ 1512.199836] sd 11:0:0:0: [sdc] Very big device. Trying to use READ CAPACITY(16).
[ 1512.200003] sd 11:0:0:0: [sdc] 5860533168 512-byte logical blocks: (3.00 TB/2.72 TiB)
[ 1512.200904] sd 11:0:0:0: [sdc] Write Protect is off
[ 1512.200915] sd 11:0:0:0: [sdc] Mode Sense: 23 00 00 00
[ 1512.201913] sd 11:0:0:0: [sdc] No Caching mode page present
[ 1512.201926] sd 11:0:0:0: [sdc] Assuming drive cache: write through
[ 1512.202655] sd 11:0:0:0: [sdc] Very big device. Trying to use READ CAPACITY(16).
[ 1512.204294] sd 11:0:0:0: [sdc] No Caching mode page present
[ 1512.204306] sd 11:0:0:0: [sdc] Assuming drive cache: write through
[ 1543.300083] usb 4-2: reset SuperSpeed USB device number 6 using xhci_hcd
[ 1543.318785] xhci_hcd 0000:04:00.0: xHCI xhci_drop_endpoint called with disabled ep ffff8801cb1ec480
[ 1543.318797] xhci_hcd 0000:04:00.0: xHCI xhci_drop_endpoint called with disabled ep ffff8801cb1ec4c0
[ 1574.366771] usb 4-2: reset SuperSpeed USB device number 6 using xhci_hcd
[ 1574.385450] xhci_hcd 0000:04:00.0: xHCI xhci_drop_endpoint called with disabled ep ffff8801cb1ec480
[ 1574.385454] xhci_hcd 0000:04:00.0: xHCI xhci_drop_endpoint called with disabled ep ffff8801cb1ec4c0

稍後:

[ 1698.142961] sd 11:0:0:0: [sdc] Unhandled error code
[ 1698.142972] sd 11:0:0:0: [sdc]  Result: hostbyte=DID_ABORT driverbyte=DRIVER_OK
[ 1698.142980] sd 11:0:0:0: [sdc] CDB: Read(10): 28 00 00 00 00 00 00 00 08 00
[ 1698.143000] end_request: I/O error, dev sdc, sector 0
[ 1698.143009] Buffer I/O error on device sdc, logical block 0

我也嘗試過 USB 2 埠中的驅動器,但遇到了同樣的問題,我似乎真的找不到任何相關的答案來研究 dmesg 的輸出,因此非常感謝任何幫助。

任何人對為什麼它不會出現或嘗試什麼有任何想法?

檢查您的核心版本以確保它支持讀取和寫入具有 4KB 扇區的驅動器。容量在 TB 範圍內的較新驅動器已從 512B 扇區的舊標準更改為 4KB 扇區。我相信您需要使用核心 2.6.31 或更高版本。Windows 7 和 8 都本機支持 4KB 扇區,這就是為什麼當您測試它時驅動器可能在這些作業系統上工作的原因。

再次查看您的輸出後,您的驅動器似乎使用 512B 扇區或模擬它們的使用,因為您的輸出的第 6 行提到了 512B 的塊大小。因為它們是邏輯塊,它仍然可以在幕後使用 4KB 塊。現在我想這可能是驅動程序的問題。

您可以嘗試的一些故障排除步驟如下:

  • 如果 USB HDD 適配器可供使用者維修,請嘗試將較小的驅動器放入 USB 外殼中,並確認您可以安裝和訪問該驅動器。這至少會確認驅動程序正在載入。- 使用 3TB 驅動器,檢查它是否仍能在 USB 匯流排上看到該設備。執行以下命令並在輸出中查找您的 USB 機箱。我提供了幾個,因為我不熟悉你的發行版。
# lsusb;
# lshw;
# lshal;
# lspci;

-您提到驅動器不存在於設備中。這是否意味著執行以下命令時不存在條目或文件?

# ls /dev/sdc;

-如果執行上述命令時存在文件/設備,您可以粘貼以下命令的輸出嗎?

# hdparm -I /dev/sdc;

引用自:https://unix.stackexchange.com/questions/68861