![全新笔记本电脑出现硬盘咔哒声,Ubuntu 16.04.3 LTS 出现奇怪的 SMART 报告](https://linux22.com/image/1547500/%E5%85%A8%E6%96%B0%E7%AC%94%E8%AE%B0%E6%9C%AC%E7%94%B5%E8%84%91%E5%87%BA%E7%8E%B0%E7%A1%AC%E7%9B%98%E5%92%94%E5%93%92%E5%A3%B0%EF%BC%8CUbuntu%2016.04.3%20LTS%20%E5%87%BA%E7%8E%B0%E5%A5%87%E6%80%AA%E7%9A%84%20SMART%20%E6%8A%A5%E5%91%8A.png)
我买了一个全新的原厂密封HP Omen 15-ce084no笔记本电脑附带 Windows 10。它有 256GB SSD 和 1TB 机械磁盘。在检查了 Windows 上一切正常后,我将其卸载,并在 SSD 上安装了带有 Linux 内核 4.10 的 Ubuntu 16.04.3 LTS,并将机械磁盘设置为数据存储。我很高兴(也很惊讶),Ubuntu 上的所有东西,包括 Wi-Fi、显卡和背光键盘控制,都可以开箱即用。安装专有驱动程序后,我的笔记本电脑就可以投入使用了。
但是,在设置我的东西时,我注意到 1TB 磁盘在运行 Ubuntu 时每秒都会发出轻微的咔嗒声。我很确定它在 Windows 10 上不会出现这种情况,例如,在访问 BIOS 设置时也不会出现这种情况。它在 Ubuntu 启动后约 30 秒开始发出咔嗒声,您无需以用户身份登录。在 lightdm 登录屏幕上或在终端上按Ctrl+ Alt+时,它也发出咔嗒声。F1
我谷歌了一下,发现 Linux 上有很多类似的咔嗒声,解决方法都是围绕磁头停放和省电问题,比如调整hdparm
设置。这些方法都无法在我的笔记本电脑上奏效,咔嗒声仍在继续。我在磁盘上运行smartctl -a
,发现所谓的新磁盘的值异常(Power-Off_Retract_Count = 524296)。此外,咔嗒声虽然很轻,但非常烦人,即使它对磁盘没有危险,我也无法忍受。
有人可以看一下下面的报告并回答我这些问题吗:
- 新硬盘上怎么会存在这些值呢?
- 硬盘有故障吗?我需要更换吗?
- Ubuntu/Linux 是否会导致这种情况并如此快地损坏硬盘(运行时间约为 31 小时)?
如果原因是 Ubuntu/Linux,那么软件除这些链接上提出的问题解决方案之外的解决方案,没有任何其中工作:
- https://petermolnar.net/hard-drive-spindown-clicking-noise/
- http://www.computercorrect.com/2011/operating-systems/linux/ubuntu/fix-for-constant-hard-drive-clicking-in-ubuntu/
- http://www.thinkwiki.org/wiki/Problem_with_hard_drive_clicking
- http://www.forumubuntusoftware.info/viewtopic.php?f=7&t=9317
- https://bbs.archlinux.org/viewtopic.php?id=139575
- 新笔记本电脑硬盘正在点击
- https://askubuntu.com/questions/596408/hdd-makes-tick-noise-every-second
smartctl -a
以下是删除一些 ID 部分后的输出:
smartctl 6.5 2016-01-24 r4214 [x86_64-linux-4.10.0-40-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Family: HGST Travelstar 7K1000
Device Model: HGST HTS721010A9E630
Serial Number: JR10XXXXXXXXXX
LU WWN Device Id: 5 000cca XXXXXXXXX
Firmware Version: JB0OA3T0
User Capacity: 1,000,204,886,016 bytes [1.00 TB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Rotation Rate: 7200 rpm
Form Factor: 2.5 inches
Device is: In smartctl database [for details use: -P show]
ATA Version is: ACS-2, ATA8-ACS T13/1699-D revision 6
SATA Version is: SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is: Thu Nov 30 20:03:48 2017 EET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
General SMART Values:
Offline data collection status: (0x00) Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Self-test execution status: ( 0) The previous self-test routine
completed
without error or no self-test has ever
been run.
Total time to complete Offline
data collection: ( 45) seconds.
Offline data collection
capabilities: (0x5b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x01) Error logging supported.
General Purpose Logging supported.
Short self-test routine
recommended polling time: ( 2) minutes.
Extended self-test routine
recommended polling time: ( 160) minutes.
SCT capabilities: (0x003d) SCT Status supported.
SCT Error Recovery Control supported.
SCT Feature Control supported.
SCT Data Table supported.
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED
WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 100 100 062 Pre-fail Always - 0
2 Throughput_Performance 0x0025 100 100 040 Pre-fail Offline - 0
3 Spin_Up_Time 0x0023 121 100 033 Pre-fail Always - 2
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 32
5 Reallocated_Sector_Ct 0x0033 100 100 005 Pre-fail Always - 0
7 Seek_Error_Rate 0x002f 100 100 067 Pre-fail Always - 0
8 Seek_Time_Performance 0x0025 100 100 040 Pre-fail Offline - 0
9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 31
10 Spin_Retry_Count 0x0033 100 100 060 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 31
183 Runtime_Bad_Block 0x0032 100 100 000 Old_age Always - 0
184 End-to-End_Error 0x0033 100 100 097 Pre-fail Always - 0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0
188 Command_Timeout 0x0032 100 100 000 Old_age Always - 0
190 Airflow_Temperature_Cel 0x0022 076 053 045 Old_age Always - 24 (Min/Max 24/24)
191 G-Sense_Error_Rate 0x0032 100 100 000 Old_age Always - 8
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 524296
193 Load_Cycle_Count 0x0032 100 100 000 Old_age Always - 237
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0
197 Current_Pending_Sector 0x0032 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0036 100 100 000 Old_age Always - 0
223 Load_Retry_Count 0x002a 100 100 000 Old_age Always - 0
SMART Error Log Version: 1
No Errors Logged
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours)
LBA_of_first_error
# 1 Short offline Completed without error 00% 3 -
# 2 Short offline Completed without error 00% 0 -
SMART Selective self-test log data structure revision number 1
SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS
1 0 0 Not_testing
2 0 0 Not_testing
3 0 0 Not_testing
4 0 0 Not_testing
5 0 0 Not_testing
Selective self-test flags (0x0):
After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.
现在,将该输出与我使用了 5 年左右的笔记本电脑的磁盘进行比较,该笔记本电脑已运行 Ubuntu 16.04 LTS 大约 1.5 年,之前运行的是 Windows 7:
smartctl 6.5 2016-01-24 r4214 [x86_64-linux-4.4.0-101-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Family: Hitachi Travelstar 5K500.B
Device Model: Hitachi HTS545025B9A300
Serial Number: 1007XXXXXXXXXXXXXXXX
LU WWN Device Id: 5 000cca XXXXXXXXX
Firmware Version: PB2OC64G
User Capacity: 250,059,350,016 bytes [250 GB]
Sector Size: 512 bytes logical/physical
Rotation Rate: 5400 rpm
Form Factor: 2.5 inches
Device is: In smartctl database [for details use: -P show]
ATA Version is: ATA8-ACS T13/1699-D revision 6
SATA Version is: SATA 2.6, 3.0 Gb/s
Local Time is: Thu Nov 30 19:58:27 2017 EET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
General SMART Values:
Offline data collection status: (0x00) Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Self-test execution status: ( 0) The previous self-test routine
completed
without error or no self-test has ever
been run.
Total time to complete Offline
data collection: ( 645) seconds.
Offline data collection
capabilities: (0x5b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x01) Error logging supported.
General Purpose Logging supported.
Short self-test routine
recommended polling time: ( 2) minutes.
Extended self-test routine
recommended polling time: ( 83) minutes.
SCT capabilities: (0x003d) SCT Status supported.
SCT Error Recovery Control supported.
SCT Feature Control supported.
SCT Data Table supported.
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED
WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x000b 100 100 062 Pre-fail Always - 0
2 Throughput_Performance 0x0005 100 100 040 Pre-fail Offline - 0
3 Spin_Up_Time 0x0007 201 201 033 Pre-fail Always - 1
4 Start_Stop_Count 0x0012 096 096 000 Old_age Always - 7777
5 Reallocated_Sector_Ct 0x0033 100 100 005 Pre-fail Always - 0
7 Seek_Error_Rate 0x000b 100 100 067 Pre-fail Always - 0
8 Seek_Time_Performance 0x0005 100 100 040 Pre-fail Offline - 0
9 Power_On_Hours 0x0012 048 048 000 Old_age Always - 23080
10 Spin_Retry_Count 0x0013 100 100 060 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 096 096 000 Old_age Always - 7763
191 G-Sense_Error_Rate 0x000a 100 100 000 Old_age Always - 0
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 136
193 Load_Cycle_Count 0x0012 083 083 000 Old_age Always - 171510
194 Temperature_Celsius 0x0002 144 144 000 Old_age Always - 38 (Min/Max 16/50)
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0
197 Current_Pending_Sector 0x0022 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0008 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x000a 200 200 000 Old_age Always - 0
223 Load_Retry_Count 0x000a 100 100 000 Old_age Always - 0
SMART Error Log Version: 1
ATA Error Count: 2
CR = Command Register [HEX]
FR = Features Register [HEX]
SC = Sector Count Register [HEX]
SN = Sector Number Register [HEX]
CL = Cylinder Low Register [HEX]
CH = Cylinder High Register [HEX]
DH = Device/Head Register [HEX]
DC = Device Command Register [HEX]
ER = Error register [HEX]
ST = Status register [HEX]
Powered_Up_Time is measured from power on, and printed as
DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes,
SS=sec, and sss=millisec. It "wraps" after 49.710 days.
Error 2 occurred at disk power-on lifetime: 14089 hours (587 days + 1 hours)
When the command that caused the error occurred, the device was active or
idle.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 51 52 f9 d9 f8 e0 Error: UNC 82 sectors at LBA = 0x00f8d9f9 = 16308729
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
25 00 7f cc d9 f8 e0 00 00:00:18.800 READ DMA EXT
25 00 7f 4d d9 f8 e0 00 00:00:18.800 READ DMA EXT
25 00 7f ce d8 f8 e0 00 00:00:18.800 READ DMA EXT
25 00 7f 4f d8 f8 e0 00 00:00:18.800 READ DMA EXT
25 00 7f d0 d7 f8 e0 00 00:00:18.800 READ DMA EXT
Error 1 occurred at disk power-on lifetime: 14089 hours (587 days + 1 hours)
When the command that caused the error occurred, the device was active or
idle.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 51 52 f9 d9 f8 e0 Error: UNC 82 sectors at LBA = 0x00f8d9f9 = 16308729
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
25 00 7f cc d9 f8 e0 00 00:00:39.800 READ DMA EXT
25 00 7f 4d d9 f8 e0 00 00:00:39.800 READ DMA EXT
25 00 7f ce d8 f8 e0 00 00:00:39.800 READ DMA EXT
25 00 7f 4f d8 f8 e0 00 00:00:39.800 READ DMA EXT
25 00 7f d0 d7 f8 e0 00 00:00:39.800 READ DMA EXT
SMART Self-test log structure revision number 1
No self-tests have been logged. [To run self-tests, use: smartctl -t]
SMART Selective self-test log data structure revision number 1
SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS
1 0 0 Not_testing
2 0 0 Not_testing
3 0 0 Not_testing
4 0 0 Not_testing
5 0 0 Not_testing
Selective self-test flags (0x0):
After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.
答案1
部分答案:
新硬盘的所有 SMART 值看起来都很好,除了Power-Off_Retract_Count
。 特别是Power_On_Hours
确认它是一个新驱动器(除非有人篡改了这些值,但我认为如果不侵入固件,这很难实现)。
这断电缩回计数是
每次将磁头从介质中取出时(即每次机器断电、休眠或空闲时)进行计数。
所以这看起来绝对像你研究过的问题:硬盘认为它处于空闲状态,缩回硬盘,然后 Linux 内核常规写回启动并再次唤醒驱动器。
我的 WD Green 也遇到了类似的问题。请注意,这些问题与供应商高度相关,您不能将适用于某个品牌和型号的解决方案应用于另一个品牌和型号。而且我从未听说过HGST旅游之星模特之前 (但那可能是我)。
查看“空闲”功能hdparm
,看看它们是否对您的硬盘有效。如果没有,您必须搜索针对此型号的特定解决方案(在 WD Green 上,必须使用一个额外的程序,该程序可以发出特定于供应商的命令来禁用空闲磁头卸载)。
答案2
我也有相同的硬盘、匹配的型号和固件版本。
的值Power-Off_Retract_Count
确实有点不对,但我并不担心,因为确实如此0x80008
(十六进制为 524296)。如果您查看从右边开始的前 4 位,我敢打赌计算机异常关机的次数是0x0008
(8)。这就是这个值的真实含义。计算机异常关机时,磁头会通过紧急卸载机制缩回,该机制在驱动器的规格中额定为 20000 次循环。
关于咔哒声,有几个线程可能提供有用的输入: