Fun with LILO and rEFIt: Resolving Boot Errors After an Upgrade

When debian is the only OS running on a machine, running apt-get update and apt-get upgrade works well. Under my Mac/Debian dual boot setup, though, upgrading has always been something of a crap shoot. The most recent problem was this error, after an upgrade and a reboot: EBDA is big; kernel setup stack overlaps LILO second stage This solution was closest to my situation, and although the advice was helpful, I managed to fix mine with fewer steps:
  1. Boot the Mac partition (which, fortunately, was still working)
  2. Run Terminal, and use the diskutil list command to find out where Linux was installed on hard drive (in my setup, it was /dev/sda3)
  3. Reboot, this time with the Debian install disc I used to install Debian originally
  4. Choose Advance Options -> Rescue Mode -> Shell mounted on /dev/sda3 (this saved me the effort of doing all the mounting described in steps 1 through 5 of the ubuntu forum solution)
  5. Inspect /etc/lilo.conf (it looked correct, so I didn't make and edits)
  6. Update lilo: /sbin/lilo -v
  7. Reboot (my mistake was doing this from the rescue mode shell, when I should have exited and rebooted out of the installer)
This time, when I chose Linux from the rEFIt menu, the kernal loaded normally (/dev/sda3 was scanned because of an improper unmount, or lack thereof, but fsck did its job without incident), and my linux partition was usable again.