我正在使用 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