去年买的一块Seagate Backup Plus 4TB, 专门用来备份的, 之前在win7下用过几次, 但是在Ubuntu下可能只用过一两次, 今天备份的时候, 感觉写入速度不太正常, 大概只有12~15MB/s的样子, 硬盘原来出厂设置的分区是单独一个NTFS分区, 我怀疑是NTFS分区在Linux下速度有影响, 于是重新分区格式化为ext4. 但是发现速度更慢了, 读写都只有1.5MB/s, 慢到极点.
硬盘信息
$ sudo smartctl -x /dev/sdc1smartctl 6.6 -05-31 r4324 [x86_64-linux-4.15.0-36-generic] (local build)Copyright (C) 2002-16, Bruce Allen, Christian Franke, === START OF INFORMATION SECTION ===Vendor:SeagateProduct: BUP BLRevision: 0304Compliance: SPC-4User Capacity: 4,000,787,029,504 bytes [4.00 TB]Logical block size: 512 bytesPhysical block size: 4096 bytesLogical Unit id:0x5000000000000001Serial number: NA9F8ZJ6Device type:diskLocal Time is: Thu Oct 4 20:01:57 CSTSMART support is:Available - device has SMART capability.SMART support is:DisabledTemperature Warning: Disabled or Not SupportedRead Cache is: EnabledWriteback Cache is: Enabled=== START OF READ SMART DATA SECTION ===SMART Health Status: OKCurrent Drive Temperature:0 CDrive Trip Temperature: 0 CError Counter logging not supportedDevice does not support Self Test loggingDevice does not support Background scan results logging
在google中搜Seagate Backup Plus Ubuntu slow能查到不少相似的问题记录, 主要原因一是说Linux对SMR硬盘的支持, 另一是说主板BIOS, 其中有一个提供的解决办法是用gparted做成GPT分区, 按这个方法处理后, 硬盘速度就恢复正常了. 现在读写的benchmark是 66MB/s 和 20MB/s, 在大文件写入中显示的写入速度在25~40MB/s之间. 因为SMR硬盘本身性能的影响, 在连续写入大概90GB后, 写入速度会快速下降
installed 'gparted' and then created GPT partition table via "Device-> Create partition table-> GPT". Then i created desired number of partitions with formats such as ntfs, ext4 etc... Now it works fine!
SMR中文叫叠瓦式磁记录, 关于SMR硬盘的说明, 可以参考知乎的这两篇/question/31941970 和/question/278755486 . SMR硬盘的写入性能非常差, 正常就只有20~30MB/s, 不适合用于大量写的场景(例如系统盘, 以及阵列), 目前7mm的2.5硬盘基本都是SMR的, 9mm的2T只有这一款ST2000LM003