19 Aug 2002 goingware   » (Master)

Crash!

I had been using an old Pentium II box for an IP masquerading server and a home-office fileserver, but I took that machine up to my mother-in-law in Newfoundland so I could help her get online. So I decided I would resume running Debian on my old Mac 8500 and use that for my masquerading.

I hadn't updated in a while, and woody had finally shipped in the meantime, so I did an update and downloaded a couple hundred packages.

Imagine my dismay when the machine froze as the packages were being installed. I had the most curious thing happen - I was sshed to my hosting service when the machine stopped being responsive, but my ssh session still worked. The installation progress had stopped. But when I logged out of my hosting service I didn't get control back in my local gnome terminal.

I couldn't ssh in to sync the disk. I forcibly rebooted, to be greeted with loud complaints by fsck when it came back up.

My /, /usr and /var filesystems had hundreds, if not thousands of errors in them. It took a long time to get fsck to run without complaint.

Unfortunately, the filesystems were left with the file data of lots of important files just plain wrong. I figured this out when investigating why I couldn't successfully resume my update. Eventually I gave up and ran the woody r0 PowerPC installer and reformatted all my filesystems except /home, and reinstalled.

One obstacle to this was that the kernel that comes with the woody r0 installer crashes on my Mac. At first I tried to install using an earlier kernel I had on hand, but it didn't match the modules that came with the installer. Eventually I was able to use the kernel and drivers.tgz that came with the last potato installer.

After I got everything installed (well, the basics anyway, I don't have X yet) I built kernel 2.4.18 and set up iptables to do masquerading. Now all my machines are sharing my blazing 56k modem. I'm still looking for ways to get broadband in rural Maine.

Here's a tip for you: an upgrade or installation is probably the worst time you can have a crash or power failure. Run a script like the following in the background just before starting dselect, and let it run until the installation is done:

#!/bin/sh
#/usr/local/bin/keep-syncing
while true
do
    sync
    sleep 3
done

I posted a message about this to debian-user, but it's not yet in the archives. When it shows up it will be on this page.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!