有没有办法恢复损坏的 USB 硬盘(不是数据,只是磁盘)?

有没有办法恢复损坏的 USB 硬盘(不是数据,只是磁盘)?

我有一个旧的 USB 硬盘,我用它来做夜间备份(使用 rsync)。但它似乎已经“坏了”。

我正在无头模式下运行 Ubuntu Server LTS (20.04),直到我必须连接显示器(出于不相关的原因)时才注意到,并看到了一些错误,例如

blk_update_request critical medium error

buffer i/o error on dev ssd

如果我运行sudo fdisk -l,它会为其他驱动器打印出一堆东西,但在某个点冻结(我猜是在尝试访问该驱动器时),直到我物理拔下它。

我可以运行lsusb -v,并且它会显示:

Bus 001 Device 005: ID 0bc2:3320 Seagate RSS LLC SRD00F2 [Expansion Desktop Drive]
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.10
  bDeviceClass            0
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x0bc2 Seagate RSS LLC
  idProduct          0x3320 SRD00F2 [Expansion Desktop Drive]
  bcdDevice            1.00
  iManufacturer           2
  iProduct                3
  iSerial                 1
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0055
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xc0
      Self Powered
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       1
      bNumEndpoints           4
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     98
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
        Data-in pipe (0x03)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
        Data-out pipe (0x04)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
        Status pipe (0x02)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
        Command pipe (0x01)

lsblk显示:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sdd      8:48   0   3.9G  0 disk

这是一个3TB的磁盘。

我拔下了驱动器,并尝试连接到我的 MacBook,但它没有出现在 diskutil 下(diskutil list没有列出它)。

将其重新连接到 Ubuntu 服务器,我可以看到sdd下显示/dev/,但它没有显示ls -l /dev/disk/by-uuid/(或任何其他/dev/disk/by-*)。

如果我使用sudo fdisk /dev/sdd,它会挂起在:

Welcome to fdisk (util-linux 2.34).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

那么,有没有其他方法可以尝试,以便我可以再次使用此驱动器?我(正如您从上面所猜到的)不介意格式化和丢失数据,我只需再次 rsync 即可。但当然,如果有一种方法可以保留数据,那就(稍微)更好了。

答案1

我们用过很多这样的玩意。以我的经验来看,一旦坏了,就不值得再去留了。

任何格式化的尝试,如果成功(通常不会)都会导致驱动器不可靠。

只需更换它即可。

如果您有多个这样的产品,请制定一个时间表以便随着时间的推移更换它们。

相关内容