2

I have this old P4 box in my house with Ubuntu Server on it I use as a media server.

Apart from the IDE boot drive there is a 1TB SATA disk attached with one of those el-cheapo IDE to SATA adapters like this one.

The disk is supposed to be one of those 'GREEN' ones which I think spins at 5400RPM.

It worked not too shabbily for a while but now (it's about 70% full) but lately it started hiccuping when playing-back media files on my media renderer (although not always). Initially I thought it was my crappy WiFi playing up.

But then I run iostat and comes up with some weird numbers. (BTW these numbers are while Twonkymedia server is trying to index the disk)

Here are some typical results of iostat -dkx 2

Device: rrqm/s   wrqm/s     r/s     w/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/s     r/s     w/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

... goes on and on like that ... then:

Device: rrqm/s   wrqm/s     r/s     w/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

Is the disk dying?


OK, so I run smartctl -a /dev/sdb and here are the results:

=== 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.

I then run two tests, a short and a conveyance one. Here is the output:

=== 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

OK, so, for those interested: the disk was dying.

First of all, since this was an old box and only has one SATA to IDE connection on it, I had to take out the disk and use my main desktop as the transfer machine between the SATA disks.

I tried to run gParted to copy the partition to the new disk. But by default it runs fsck before copying and was taking forever, and since it doesn't run with the -C option, after two hours, you couldn't tell where it was or what it was doing or how much longer it was going to take, so I cancelled it.

I then booted up with Ubuntu Desktop as a LiveCD, and ran fsck trying to clean up what I could before transferring data. It took, again, very long, but the progress bar gave me some assurance that it was progressing. Although at times it felt like thrashing the disk may have been doing more damage on the degraded disk than good.

When fsck finished, I tried to copy the files across in a single copy and that was also taking forever. I run iostat to check out the transfer rate and it turned out that it was averaging 40kB/s, with massive await times between 10,000ms and 60,000ms.

Two hours later, I let iostat running and then initiated multiple copy operations from the disk at the same time. That fared better, but not stellarly, now the average transfer rate was fluctuating between 100-600kB/s.

At this point it became clear that since I had to transfer around 800GBs of data it would take 10-20 days of operation to transfer.

I transferred the latest data only which took about 16 hours at which point the need for the server to be available again, (not to mention my main desktop) became larger than the need to recover all the data.

So I decided to put the new disk in the box, and, since the transfer speeds are so slow anyway, to hook-up the old disk to main desktop and try to transfer whatever other data I could manage over WiFi.

The problem now became my main desktop, as it is running Windows, so I installed Ext2FSD to try to access the data, but when hooking up the disk it refused to boot at all - froze after the CD check. Tried hot-plugging it while windows was running, but it also wasn't seeing it.

So at this point I'll wait for another machine with SATA connectors to become available that is not primarily needed for anything and then let it chug along trying to get whatever data it can, transfer it over the network before the disk becomes useless.

That's all, I thought I'd let everyone know for future reference.

I post the final status as an appendix to the question, instead of a response, in-order to give the tick to the first answer.

Thanks guys for the suggestions.

the-wabbit
  • 40,737
  • 13
  • 111
  • 174
user34039
  • 43
  • 4

1 Answers1

1

What do you mean by "hiccup?" Is it a sound, or behavior?

I would look at the disk-level diagnostics using a SMART utility to see what is going on. If there are many read errors there or other indications that the disk is dying, they should show up there.

If you are talking about the WD "green" drives, btw, there is more than just lower power involved with them. They may even use alternate formatting, which is fine for Windows but mostly sucks (once performed) for other OSs.

Michael Graff
  • 6,668
  • 1
  • 24
  • 36
  • I meant hiccup during media playback. There are some other issues too. I'm now trying to copy a file, it takes a very long time then fails with a: Input/output error I use EXT4, I'll see if I can find a SMART utility and post the results. – user34039 Feb 06 '10 at 20:38
  • If you're getting I/O errors from the drive, I'd say there's a very good chance it's dying. If you want (and if it works with this) you can try booting the Ultimate Boot CD and use the disk diagnostic to see if it finds anything. I like HDAT2 for drive-agnostic checks. – Bart Silverstrim Feb 06 '10 at 21:02
  • Google for UBCD or Ultimate Boot CD and download the ISO to burn and boot from. – Bart Silverstrim Feb 06 '10 at 21:03
  • I updated the question with the SMART info. I think it is dying. – user34039 Feb 06 '10 at 21:09
  • I agree, I think it's dying. Best to get all off you can ASAP. – Michael Graff Feb 07 '10 at 21:31
  • Thanks Michael and Bart, updated the question with the final status. – user34039 Feb 10 '10 at 03:29