刷新外部 HDD 上的 SMART 数据可提高传输速度

刷新外部 HDD 上的 SMART 数据可提高传输速度

我正在使用 Linux Mint 18.3,并且有一个 Seagate Backup Plus 2TB 外置硬盘。我的驱动器遇到了一些小问题,我能够修复这些问题,但我遇到了一个真正有问题的障碍。

从我的内部 HDD 或 SSD 复制到希捷硬盘可提供正常的传输速度(大约 1.3 GB 为 100MB/s,然后在 USB3 端口上减慢至 20MB/s)。但是,如果我尝试从 Seagate 硬盘复制到内部 HDD 或 SSD,我会获得 2.5MB/s 的非常精确的复制速度。关键在于:如果在从希捷硬盘复制文件时,我进入磁盘实用程序并手动强制刷新希捷磁盘中的 SMART 数据,则速度会大幅提升约一秒半。

Seagate 的格式为 NTFS(我知道...),所以我认为这在 Windows 上会更好。我在 Windows 7 分区上进行了尝试,这一次,我从 Seagate 复制到内部 HDD 或 SSD 的任何文件的速度都在 750KB/s 左右。所以它比 Linux 上还要慢(看起来像 USB 1.1 速度)。

我在不同的温度条件下(我认为外部驱动器可能被硬连线以限制速度以免过热)以及安装 Seagate Dashboard 程序后尝试过此实验。

有谁知道造成这种情况的原因以及如何解决?我讨厌必须不断地单击“刷新智能数据”按钮,而且我也不太确定这对驱动器的健康有好处。

注意:SMART 数据显示没有坏扇区或重新分配的扇区。

编辑:

根据弗罗斯特舒茨的评论,我继续尝试将文件从 Seagate 驱动器复制到笔记本电脑的 Lubuntu 分区,结果发现,我获得了笔记本电脑能够达到的 USB 2.0 速度。所以我知道问题不在于外部硬盘。

背景:我的电脑有一个“内置”USB 集线器,因为主板上有几个 USB 插槽,但机器的“前面”也有几个,后一个是集线器。我从不使用那个,因为速度较慢,但​​我仍然将其插入。

当我继续操作时,为了运行 dmesg 和 lsusb 命令,将 Seagate 硬盘插回我的计算机(在我获得精确 2.5MB/s 速度的同一个 3.0 USB 端口中),我再次尝试复制文件,只是为了它(我一直在尝试的同一个文件,它是一个 23GB 的大文件)。

你瞧,我的内置 HDD 的写入速度稳定为 125MB/s。总共23GB。除了我将希捷插入另一台计算机之外,绝对没有其他任何变化。有些东西重置了驱动器正在读取的内容并使其再次正常。

我相信这整个事件与我尝试拔掉希捷硬盘的方式有关。由于某种原因,当我“安全地移除驱动器”希捷外置硬盘时,它不会使驱动器进入睡眠状态,因为我仍然听到盘片旋转的声音,并且如果我从 USB 端口拔下插头,它会在磁头转动时发出尖锐的声音休息一下。在决定卸载然后使用 hdparm -y /dev/sdx 命令(这确实解决了我在拔下插头之前将驱动器置于睡眠状态的问题)之前,我尝试了一些我什至不记得的其他东西,这不知何故使驱动器当插入我的计算机的任何 USB 端口时表现异常。

出于所有意图和目的,我的问题已经解决,但我将为dmesg任何有兴趣与我一起解决这个问题的人提供数据。

[ 5448.682599] usb 2-5: new SuperSpeed USB device number 2 using xhci_hcd
[ 5448.703297] usb 2-5: New USB device found, idVendor=0bc2, idProduct=ab24
[ 5448.703301] usb 2-5: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 5448.703304] usb 2-5: Product: BUP Slim BK
[ 5448.703307] usb 2-5: Manufacturer: Seagate
[ 5448.703309] usb 2-5: SerialNumber: xxxxxx (my edit)
[ 5448.705875] scsi host6: uas
[ 5448.706528] scsi 6:0:0:0: Direct-Access     Seagate  BUP Slim BK      0304 PQ: 0 ANSI: 6
[ 5448.762823] sd 6:0:0:0: Attached scsi generic sg3 type 0
[ 5448.763012] sd 6:0:0:0: [sdc] Spinning up disk...
[ 5449.778572] .
[ 5450.802589] .
[ 5451.826604] .
[ 5452.850628] .
[ 5452.850898] ready
[ 5452.851222] sd 6:0:0:0: [sdc] 3907029167 512-byte logical blocks: (2.00 TB/1.82 TiB)
[ 5452.851226] sd 6:0:0:0: [sdc] 2048-byte physical blocks
[ 5453.201932] sd 6:0:0:0: [sdc] Write Protect is off
[ 5453.201936] sd 6:0:0:0: [sdc] Mode Sense: 4f 00 00 00
[ 5453.202097] sd 6:0:0:0: [sdc] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 5453.233738]  sdc: sdc1
[ 5453.234888] sd 6:0:0:0: [sdc] Attached SCSI disk
[ 5811.595986] usb 2-5: USB disconnect, device number 2
[ 5811.597333] sd 6:0:0:0: [sdc] Synchronizing SCSI cache
[ 5811.844787] sd 6:0:0:0: [sdc] Synchronize Cache(10) failed: Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK

我相信最后三行左右是在我卸载它之后。

lsusb -t给了这个:

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
    |__ Port 5: Dev 3, If 0, Class=Mass Storage, Driver=uas, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M
    |__ Port 4: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 8: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
    |__ Port 8: Dev 4, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M

lsusb -v给出了这个(仅包括希捷的):

Bus 002 Device 003: ID 0bc2:ab24 Seagate RSS LLC 
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         9
  idVendor           0x0bc2 Seagate RSS LLC
  idProduct          0xab24 
  bcdDevice            1.00
  iManufacturer           2 
  iProduct                3 
  iSerial                 1 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          121
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower               36mA
    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     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
    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     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
        MaxStreams             32
        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     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
        MaxStreams             32
        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     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
        MaxStreams             32
        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     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               0
        Command pipe (0x01)

发行版/内核:

Linux PC 4.13.0-26-generic #29~16.04.2-Ubuntu SMP Tue Jan 9 22:00:44 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

相关内容