Linux 检测到外部驱动器大得离谱

Linux 检测到外部驱动器大得离谱

一位亲戚让我看一下他们的希捷 2TB 外置硬盘,他们说以前可以用,现在不能用了。我将它弹出到我的桌面上,除了它以适当的名称显示在lsusb.

大约10分钟后,我使用ls \dev | grep sd并看到它终于出现为/dev/sdc,所以我尝试在 中查看它fdisk -l,但它没有列出。我想这可能是一个 GPT 表,所以我在 GParted 中打开它,但加载时间很长,所以我尝试了lsblk从哪里得到这个:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 111.8G  0 disk 
├─sda1   8:1    0   108G  0 part /
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0   3.8G  0 part [SWAP]
sdb      8:16   0   1.8T  0 disk 
└─sdb1   8:17   0   1.8T  0 part 
sdc      8:32   0   128P  0 disk 
sr0     11:0    1  1024M  0 rom  

现在,要么我的亲戚以某种方式拥有人类已知的最大驱动器,要么发生了一些非常奇怪的事情。假设是后者,有什么办法可以解决这个问题吗?

一点额外的说明:我再次尝试使用 GParted 打开驱动器,这次等待它加载,它也认为驱动器包含 128 PB 的未分配空间,所以这是内部的东西。另外,显然没有检测到分区,我已经告诉我的亲戚,可能对其上的数据无能为力,他们说无论如何他们都不关心,他们只是希望驱动器再次可用。

我尝试使用 which 重写 MBRdd失败,因此我收到以下相关消息dmesg

[15404.910434] scsi_io_completion_action: 14 callbacks suppressed
[15404.910445] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.910449] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.910453] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.910457] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.910458] print_req_error: 14 callbacks suppressed
[15404.910461] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.914427] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.914430] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.914432] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.914435] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.914437] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.914440] buffer_io_error: 38 callbacks suppressed
[15404.914442] Buffer I/O error on dev sdc, logical block 0, async page read
[15404.915937] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.915941] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.915944] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.915949] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 02 00 00 00 06 00 00
[15404.915953] blk_update_request: critical medium error, dev sdc, sector 2 op 0x0:(READ) flags 0x0 phys_seg 3 prio class 0
[15404.915959] Buffer I/O error on dev sdc, logical block 1, async page read
[15404.915963] Buffer I/O error on dev sdc, logical block 2, async page read
[15404.915966] Buffer I/O error on dev sdc, logical block 3, async page read
[15404.917683] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.917686] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.917689] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.917692] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.917694] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.917698] Buffer I/O error on dev sdc, logical block 0, async page read
[15404.919186] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.919189] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.919192] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.919195] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 02 00 00 00 06 00 00
[15404.919197] blk_update_request: critical medium error, dev sdc, sector 2 op 0x0:(READ) flags 0x0 phys_seg 3 prio class 0
[15404.919200] Buffer I/O error on dev sdc, logical block 1, async page read
[15404.919203] Buffer I/O error on dev sdc, logical block 2, async page read
[15404.919205] Buffer I/O error on dev sdc, logical block 3, async page read
[15404.920932] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.920935] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.920937] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.920940] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.920942] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.920945] Buffer I/O error on dev sdc, logical block 0, async page read
[15404.922433] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.922436] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.922438] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.922440] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 02 00 00 00 06 00 00
[15404.922442] blk_update_request: critical medium error, dev sdc, sector 2 op 0x0:(READ) flags 0x0 phys_seg 3 prio class 0
[15404.922445] Buffer I/O error on dev sdc, logical block 1, async page read
[15404.923930] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.923932] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.923934] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.923936] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.923938] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.925438] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.925442] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.925446] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.925449] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 02 00 00 00 06 00 00
[15404.925453] blk_update_request: critical medium error, dev sdc, sector 2 op 0x0:(READ) flags 0x0 phys_seg 3 prio class 0
[15404.925481] ldm_validate_partition_table(): Disk read failed.
[15404.927181] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.927185] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.927189] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.927192] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.927195] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.937694] Dev sdc: unable to read RDB block 0
[15404.945196]  sdc: unable to read partition table

操作系统:Debian 10(Bullseye),内核为 5.5.13-2

smartctl输出是:

smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.5.0-1-amd64] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Mobile HDD
Device Model:     ST2000LM007-1R8174
Serial Number:    WDZCWPT0
LU WWN Device Id: 5 000c50 0b926222d
Firmware Version: SBK2
User Capacity:    18,446,744,073,709,551,104 bytes [18446 PB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    7200 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS T13/1699-D revision 4
SATA Version is:  SATA 3.0, 6.0 Gb/s
Local Time is:    Mon Apr 27 18:21:43 2020 EDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Read SMART Data failed: scsi error aborted command

=== START OF READ SMART DATA SECTION ===
SMART Status command failed: scsi error aborted command
SMART overall-health self-assessment test result: UNKNOWN!
SMART Status, Attributes and Thresholds cannot be read.

Read SMART Log Directory failed: scsi error aborted command

Read SMART Error Log failed: scsi error aborted command

Read SMART Self-test Log failed: scsi error aborted command

Selective Self-tests/Logging not supported

SeaGate Utilities 信息提供:

==========================================================================================
 SeaChest_SMART - Seagate drive utilities - NVMe Enabled
 Copyright (c) 2014-2019 Seagate Technology LLC and/or its Affiliates, All Rights Reserved
 SeaChest_SMART Version: 1.12.0-1_19_23 X86_64
 Build Date: Jun 10 2019
 Today: Mon Apr 27 18:07:59 2020
==========================================================================================

/dev/sg3 - BACKUP+ - 90CD8083BJBG         - SCSI
    Vendor ID: Seagate 
    Model Number: BACKUP+         
    Serial Number: 90CD8083BJBG
    Firmware Revision: 0304
    World Wide Name: 5000000000000001
    Drive Capacity (PB/PiB): 144.12/128.00
    Temperature Data:
        Current Temperature (C): Not Reported
        Highest Temperature (C): Not Reported
        Lowest Temperature (C): Not Reported
    Power On Time: Not Reported
    Power On Hours: Not Reported
    MaxLBA: 281474976710653
    Native MaxLBA: Not Reported
    Logical Sector Size (B): 512
    Physical Sector Size (B): 512
    Sector Alignment: 0
    Rotation Rate (RPM): Not Reported
    Form Factor: Not Reported
    Last DST information:
        Not supported
    Long Drive Self Test Time: Not Supported
    Interface speed:
        Not Reported
    Annualized Workload Rate (TB/yr): Not Reported
    Total Bytes Read (B): Not Reported
    Total Bytes Written (B): Not Reported
    Encryption Support: Not Supported
    Cache Size (MiB): Not Reported
    Read Look-Ahead: Enabled
    Write Cache: Enabled
    SMART Status: Unknown or Not Supported
    ATA Security Information: Not Supported
    Firmware Download Support: Full, Segmented
    Specifications Supported:
        SPC-4
        SBC-3
        UAS
        SPC-4
    Features Supported:
        Power Conditions [Enabled]
        Informational Exceptions [Mode 0]

答案1

根据您的smartctl输出,问题不在于物理存储驱动器出现故障;相反,它甚至无法正确报告大小(应该“烧录”到固件中)这一事实表明控制器电子设备在链中的某个点发生了故障。

大多数外部 USB 硬盘都具有基本但并不总是高级的 SMART 支持;众所周知,希捷硬盘甚至无法提供基线预期支持,因此我不愿意肯定地说 SMART 故障是控制器故障的结果。然而,不准确的报告大小表明确实发生了这种情况。

如果这是一个“一体式”外部驱动器,您可以通过移除实际硬盘并将其连接到独立的 USB-HD 适配器来恢复数据。 (如果故障出现在 USB 接口电子设备而不是板载驱动电子设备中,就会出现这种情况。)如果这不起作用并且您遇到类似的错误,则如果您将数据发送到恢复实验室,则数据可能是可恢复的,尽管这往往非常昂贵,只有当您拥有无价的家庭照片或有价值的比特币钱包之类的东西时才值得。

答案2

恐怕你的驱动器已经消失了。该错误清楚地表明它有坏扇区,并且尝试重新分配它们,但显然没有剩余可用扇区。

看起来硬盘已经积累坏扇区有一段时间了。它最终没有空间可用于任何更多的重新分配。

您可以尝试运行一下,smartctl -a /dev/sdc看看是否可以获得更多信息。

编辑

智能数据表明固件问题导致了此问题。我使用过的驱动器有超过一千个坏扇区。你的似乎只是占用了初始化所需的块。

您可以尝试了解 Seagate 是否提供任何软件解决方案这个链接

此外,专业的数据救援人员也许能够修复驱动器和数据。然而,它们可能会花费太多。所以我不支持这样做,除非驱动器中有一些无价的东西。

此外,您可以自行尝试一些硬件解决方案。这是一个来自 Youtube 的简单教程。但是,如果不小心,您可能会丢失驱动器和数据。

答案3

Debian 5.5?这是一个非常旧的版本,因此您可能在 lsblk 中发现了一个错误,它显示了死驱动器的一些最大值。从您附加的日志来看,该驱动器确实已损坏。

答案4

如果是接口电子设备坏了:

如果您有一个相同的驱动器(可能同时购买了其中 2 个),您可以在两个驱动器之间交换电子设备,如果它在接口中,则一切都应该可以恢复。之后,决定您最喜欢哪种驱动器。

相关内容