Last week I had probably my worst luck with hardware, beside having to fight for the video card (I won the fight but I’ll be writing about that at another time), I ended up having a corrupted filesystem on my external drive. Let me explain a bit about that particular drive though
It’s a Seagate FreeAgent XTreme. I bought it this way so it would have FW800 (for the Macs), FW400 (for compatibility) and eSATA (so I could use it for random access with a fast connection). It worked great as eSATA for about 50 days, then suddenly it stopped working: if connected during boot-up the eSATA controller (a JMicron-based PCI-E controller) gets stuck at drive detect, and if plugged in afterwards, the kernel tries reading it for a while then decides it won’t be able to initialize it correctly. There is a note about Seagate 1TB disks in the change log of the JMicron’s firmware (option ROM), so I tried updating it; unfortunately the flash chip in my card is not supported by the JMicron-provided flash utility, and flashrom does not support this kind of card yet.
So the other week I was preparing a customized Windows XP installation CD for a friend of mine (yes I also do that from time to time — on the other hand, I converted his whole family to quite a few free software packages, from old pirated copies so I feel a bit better about it), while Parallels ground to a halt… I was expecting Windows freezing up, instead it was the external hard drive, from which Windows was getting the drivers (via samba): Yamato couldn’t access it any longer, I tried restarting, and then Yamato entirely froze up when accessing the disk. Now, the problem lied most likely in the ATi-provided fglrx drivers; Yamato stopped freezing when I removed them and fixed up KMS. On the other hand, the disk ended up losing some data; I’m not sure whether to give the fault to the disk itself, or to ext4… but I’m actually considering the latter, given that a bad shutdown of my router (caused by my cat! She often sleeps over the UPS, probably for the heat, and that time she pressed the power-off button) a couple of days earlier ended up entirely destroying the filesystem on the compact flash card (luckily, I only had to format the card again and re-syncing the content on it — and re-setting up some of the configuration files I forgot to integrate in my local work copy, d’oh!).
I lost some data, mostly it was locally-downloaded copies of drivers and software for Windows, all the stuff that I cannot download again are already backed up in multiple copies. And so is most of the content that either downloading or processing again would be a major pain (like my collection of music CDs: re-ripping all dozens of them would be a major waste of time — although I still wonder why I have ripped the “Kilkelly” song, that seems to be more depressing than the song from Marco Masini). But this does not really work extremely well, there is more stuff that, while re-downloadable, I’d like to keep more copies of, and there is another problem with replicating the content with the other boxes. At the end, I decided to do what any hasty, money-loaded sysadministrator would do, even though I’m neither hasty nor loaded with money (all the contrary actually, but being self-employed, my time is money so…): I threw more disks at the problem. I bought two RAID1-capable Western Digital MyBook Studio Edition disks, 1TB each (so it’s actually 4 TBs). My idea is to gather daily all the important content (home, work GIT repositories, music, videos and so on) onto the external drive, then once a week copy the content of the drive onto the other one. This would also save me from hasty deletions and filesystem corruption… and yes my work data, as well as my home is already on a live raid1 system.
On more points, the ath9k I bought for the router (before finding out that hostapd doesn’t work very well with it), failed its plan-B, using it on Yamato. The problem is that with the 2.6.31 kernel, the card does not seem to like staying associated with the access point for more than half an hour, and you can easily figure why that’s a problem. I wanted to try 2.6.32_rc1, when I tried drm-next, but then the wireless support looked totally broken and I gave up, so I’m still running with the ath5k. Sigh.
And finally, this added to the period where the stuff I bought (the Wii, a cellphone for my mother) was broken and needed replacement. Terrific.