磁盘是否在死亡? 奇怪的数字iostat

我在我的房子里有这个老的P4盒子,用Ubuntu服务器作为媒体服务器。

除了IDE启动驱动器之外,还有一个1TB的SATA磁盘,附带一个这样的el-cheapo IDE到SATA适配器。

该磁盘应该是那些'绿',我认为在5400RPM的旋转之一。

它的工作不是一帆风顺一会儿,但现在(大约70%已满),但最近开始在媒体播放器上回放媒体文件(虽然不总是)时开始打嗝。 起初,我以为这是我的蹩脚的WiFi打起来。

但是后来我运行iostat并且出现了一些奇怪的数字。 (BTW这些数字是Twonkymedia服务器试图索引磁盘时)

以下是iostat -dkx 2的一些典型结果

Device: rrqm/s wrqm/sr/sw/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 2.00 0.00 0.00 100.00 Device: rrqm/s wrqm/sr/sw/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 1.99 0.00 0.00 99.50 

…继续下去…然后:

 Device: rrqm/s wrqm/sr/sw/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util sdb 0.00 0.00 0.50 0.00 64.00 0.00 256.00 1.58 206436.00 2000.00 100.00 

磁盘是否正在死亡?


好的,我运行smartctl -a / dev / sdb,结果如下:

 === START OF INFORMATION SECTION === Device Model: WDC WD10EADS-00M2B0 Serial Number: WD-WCAV50522614 Firmware Version: 01.00A01 User Capacity: 1,000,204,886,016 bytes Device is: Not in smartctl database [for details use: -P showall] ATA Version is: 8 ATA Standard is: Exact ATA specification draft version not indicated Local Time is: Sun Feb 7 07:43:21 2010 EST 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: (0x84) Offline data collection activity was suspended by an interrupting command from host. Auto Offline Data Collection: Enabled. 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: (20760) seconds. Offline data collection capabilities: (0x7b) SMART execute Offline immediate. Auto Offline data collection on/off support. Suspend Offline collection upon new command. Offline surface scan supported. Self-test supported. 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: ( 239) minutes. Conveyance self-test routine recommended polling time: ( 5) minutes. SCT capabilities: (0x303f) SCT Status 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 167 167 051 Pre-fail Always - 910436 3 Spin_Up_Time 0x0027 134 110 021 Pre-fail Always - 6283 4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 158 5 Reallocated_Sector_Ct 0x0033 159 159 140 Pre-fail Always - 322 7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0 9 Power_On_Hours 0x0032 097 097 000 Old_age Always - 2625 10 Spin_Retry_Count 0x0032 100 100 000 Old_age Always - 0 11 Calibration_Retry_Count 0x0032 100 100 000 Old_age Always - 0 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 151 192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 34 193 Load_Cycle_Count 0x0032 176 176 000 Old_age Always - 72261 194 Temperature_Celsius 0x0022 112 088 000 Old_age Always - 35 196 Reallocated_Event_Count 0x0032 001 001 000 Old_age Always - 320 197 Current_Pending_Sector 0x0032 192 192 000 Old_age Always - 1388 198 Offline_Uncorrectable 0x0030 200 199 000 Old_age Offline - 22 199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 1 200 Multi_Zone_Error_Rate 0x0008 001 001 000 Old_age Offline - 125532 SMART Error Log Version: 1 No Errors Logged 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. 

然后我运行两个testing,一个简短的和一个交通工具。 这是输出:

 === START OF READ SMART DATA SECTION === SMART Self-test log structure revision number 1 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error # 1 Conveyance offline Completed: read failure 90% 2625 1070661197 # 2 Short offline Completed: read failure 90% 2625 1070661197 

好的,对于那些感兴趣的人来说,磁盘快死了。

首先,由于这是一个旧的盒子,只有一个SATA到IDE的连接,所以我不得不取出磁盘,并使用我的主桌面作为SATA磁盘之间的传输机器。

我试图运行gParted将分区复制到新的磁盘。 但默认情况下,它在复制之前运行fsck并且一直持续运行,而且由于它不能用-C选项运行,所以在两个小时之后,您无法知道它在哪里,在做什么或者运行多长时间拿,所以我取消了。

然后,我用Ubuntu桌面作为LiveCD启动,运行fsck试图在传输数据之前清理我所能做的。 花了很长时间,但是进度条给了我一些保证,说明它正在进步。 虽然有时候感觉就像颠簸一样,磁盘可能对劣化的磁盘造成了更多的损害。

当fsck完成时,我试图将文件复制到一个副本中,这也是永远的。 我运行iostat来检查传输速率,结果是平均为40kB / s,在10,000ms到60,000ms之间有大量的等待时间。

两个小时后,我让iostat运行,然后同时从磁盘启动多个复制操作。 这performance更好,但并不是非常出色,现在平均传输速率在100-600kB / s之间波动。

在这一点上,很明显,因为我需要传输大约800GB的数据,所以需要10-20天的操作才能传输。

我只传送了大约16个小时的最新数据,此时服务器再次可用(更不用说我的主桌面)的需求变得比恢复所有数据的需要更大。

所以我决定把这个新磁盘放在盒子里,而且由于传输速度太慢了,要把旧磁盘连接到主桌面上,并尝试传输任何我可以通过WiFipipe理的数据。

现在这个问题成了我的主要桌面,因为它运行的是Windows,因此我安装了Ext2FSD来访问数据,但是在挂起磁盘时却拒绝启动 – 在CD检查之后冻结。 试图在Windows运行时热插拔它,但它也没有看到它。

所以在这一点上,我会等待另一台SATA接口的机器变得可用,而不是主要用于任何事情,然后让它突然尝试获取任何可能的数据,在磁盘变得无用之前通过networking传输。

就是这样,我想我会让大家知道以供将来参考。

我把最后的状态作为问题的附录发布,而不是回应,以便给第一个答案打勾。

谢谢你们的build议。

“打嗝”是什么意思? 这是一种声音,还是一种行为?

我将使用SMART实用程序来查看磁盘级别的诊断信息,以了解发生的情况。 如果有很多读取错误或其他迹象表明磁盘正在死亡,则应该显示在那里。

如果你正在谈论西部数据“绿色”驱动器,顺便说一下,不仅仅是低功耗涉及。 他们甚至可以使用备用格式,这对于Windows来说很好,但是对于其他操作系统来说,大部分都是糟糕的(一旦执行)。