Percussive Maintenance

A couple of weeks ago this antique 1997 Cheetah 9 drive showed up at the OS/2 Museum:

A fat Cheetah

It was effectively a freebie, a faulty drive bought together with another, more desirable, and working drive. (Well, initially working, but that’s a whole different story.) Now, the model ST19101W Cheetah is historically an interesting drive, since it’s the first generation Cheetah, and those Cheetahs were the first 10,000 RPM drives ever. There were two models, Cheetah 4LP (1″ high) and Cheetah 9 (1.6″ high), with 4 and 9 GB capacities, respectively. When the Cheetah first became available, it was “unquestionably the fastest hard drive ever made” according to Red Hill.

This particular Cheetah 9 was quite sick and would not spin up. It was clearly trying to spin but failing, resulting in an endless cycle of attempted spin-up, beep, attempted spin-up, beep, and so on. The beeping was most likely resonance from the voice coil actuator, since the drive has no built in beeper.

This kind of problem can be caused by mechanical issues, such as when the drive head is stuck and the motor isn’t strong enough to overcome the resistance. Or by bearings seizing up after years of disuse. Sometimes it helps to open the drive and push the spindle along with a tool; that loosens the drive enough that the motor can spin it up again.

A Seagate Cheetah 9 drive manufactured on Dec 4, 1997

With this Cheetah, I first tried a much simpler method. While the drive was powered off, I held the drive in one hand and tapped it with the knuckles of my other hand. A few gentle taps on the side of the drive can be enough to dislodge a stuck head, or move the bearings just enough, if one is lucky.

I was, and the drive spun up! Not only it spun up, but it initialized and in the HBA’s BIOS I was able to verify the first few megabytes of the drive, finding no errors.

Trouble started when I tried to boot into Linux, but the trouble came from a very unexpected direction. The drive had an ext2 partition on it. Even though no one was attempting to mount the partition, Linux was probing it anyway, and kept failing because it kept hitting a patch of bad sectors near the end of the disk. This held up the boot process for several minutes and was accompanied by the drive producing more beeping sounds.

At that point, I determined that the beginning of drive can read without any trouble, and let ddrescue do its job. When ddrescue was about halfway through, it started reporting strange errors (“F/W problem”) and the drive effectively stopped working. The drive was also rather hot, to the point where I could not even hold it for more than a fraction of a second.

It’s not unusual that 10,000 RPM drives need additional cooling. This Cheetah is a half-height drive, i.e. fat, and with eight platters spinning that fast it naturally generates quite a bit of heat. So maybe the drive was simply overheating, especially the drive electronics.

A few minutes and one 12cm fan later, the Cheetah was merely toasty warm and no longer hot. Not only that, it was able to read the first 9 GB of data with zero errors! But close to the end of the medium, it hit several missing sectors. Not just bad but simply not there.

In the end, ddrescue recovered all but 4KB (eight consecutive sectors) from the drive. I was able to see that the drive used to live in a Linux web server decommissioned sometime in or after May 2001, and after that the drive was most likely sitting in a drawer somewhere for almost 20 years. It used to belong to a computer VAR in Manhattan, Kansas. It is quite possible that the drive was taken out of service exactly because of the problem I saw many years later—greatly increasing Linux boot time and making distressing noises.

The drive reports 28,425 hours of uptime, a little over 3 years. That’s neither a little nor a lot. Given that it was manufactured in December 1997, the drive most likely ran 24/7 from about the beginning of 1998 until May 2001. At that point, it would have been utterly obsoleted by Seagate’s Cheetah 73, with eight times the capacity and better throughput.

After sitting idle for almost a week, the Cheetah 9 had no trouble spinning up. We’ll see how long that lasts.

This entry was posted in Hardware Hacks, Seagate. Bookmark the permalink.

6 Responses to Percussive Maintenance

  1. Mihai Gaitos says:

    Another option would be to try and rotate the drive around its spindle axis while its trying to start. Sometimes the platter inertia adds just enough torque for the heads to come unstuck.
    On a similar note, a while ago I was able to read a ST-225 drive by gently rocking it while reading. I suspect that had something to do with head-platter distance. After reading, I phisically formatted the drive and it worked fine (no more rocking needs 🙂 )

    Should anyone care about that story, find it here (along with a simple DOS dd-like program in part 2):
    https://hawk.ro/stories/everex286/

  2. Michal Necasek says:

    Yes. I was able to do just that with a 1987 Rodime RO652A, it’s a bit stiff but gets spinning if I twist the drive just right, and then it works fine (until it spins down and sits idle for a while). I tried that with the Cheetah but it made no difference.

    The ST-225 drives are notorious for “forgetting” their data and being sensitive to temperature changes and such. The problem is that these are really old school drives with a stepper motor and absolutely no ability to hone in on a track like every halfway modern drive. If the head isn’t quite on the right track, the drive can only recalibrate and try again, but it can’t “find” the track. It’s really like a big floppy drive more than anything else. All that said, the ST-225 drives are really almost indestructible, they just keep going.

    Blasted capacitors… I just recently had one blow up in a Seagate ST-157N. At least the tantalum capacitors usually just explode and don’t leak caustic crap all over the PCB.

  3. rasz_pl says:

    >for several minutes and was

    text watermarking? 😉

  4. rasz_pl says:

    hmm, my comment with HTML tags () just got posted with those tags not escaped/stripped. blabla ?

  5. Michal Necasek says:

    No, I don’t even know what that was. Definitely not intentional 🙂 Should be corrected now.

  6. Bob Nelson says:

    Hah, someone else that uses the term “percussive maintenance”. I have been using that for many many years.

    As for rotating the drives to break head stiction you can do that with the drive not connected as well. A good sharp twist or three on the rotation axis can break the head out of the lube which is generally what causes them to get stuck.

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.