I haven't gotten back to playing with cooker stuff yet, having just 
re-installed from scratch, but I had a weird series of circumstances 
(unrelated to the fresh install...) that resulted in quite a mess today, and 
from this comes a suggestion...

I was re-compiling my freshly re-installed stock 2.4.8-26mdk kernel.  The 
kernel made, but the module make failed due to some misconfiguration or 
other.  Not a big deal.  Unless the power goes off...

I was piddling with this while playing my electric guitar.  I turned off the 
amp, and evidently that caused a power fluctuation that my computer didn't 
like, so it shut off instantly.  This happened after the bad make, but before 
I had had a chance to do anything about it.

I re-started.  My new kernel had no modules, obviously, and I hadn't built 
ext3 support into the kernel, having left it as a module.  (Lesson to be 
learned there too...)

The make copied my new bzImage, initrd and System.map to /boot and set up an 
entry in LILO.  That had never happened before.  I've never had a make 
actually create an initrd before, muchless copy stuff to /boot and modify 
LILO, and I've compiled a lot of kernels this week, including this same one, 
and gotten most of them working.  Anyway,  I wasn't expecting that to happen 
at all, or I would have fixed lilo.conf before I started playing around.  By 
default, it points to the symlinks vmlinuz@ etc. instead of the actual 
images.  That's a REALLY bad idea.

So what was the result?  vmlinuz@ and initrd@ were both pointing to the new, 
broken kernel.  *I* didn't change them, so the make must have done it while 
it was screwing around in /boot without my permission.  (I gather it's 
supposed to do that, and it must have been broken up until now, but 
nevertheless I wasn't expecting it, since it had never happened before...)

The new entry in LILO was also pointing to the broken kernel.  Getting the 
picture here?  When LILO added the new entry, it also referenced the images 
pointed to by the symlinks, which  make (or something) changed...

failsafe points to broken kernel
nofsbwhatever points to broken kernel
linux points to broken kernel
248-dmm points to broken kernel

Nice.

Thus I suggest that the default configuration of having the "factory 
installed" boot loader entries point to the symlinks instead of the actual 
kernel images is BRAIN DAMAGED.

Now that I think about it, it MUST have been the make that did this.  I made 
the new kernel, the make copied the new images, and pointed those symlinks at 
the new kernel.  Since lilo points at the physical location of whatever the 
symlink is pointing to, that had to have happened before I lost power.  It 
has to have been the make.

In any case, had LILO been pointing at vmlinuz-2.4.8-26mdk etc. directly this 
would not have happened because when it re-configured the MBR it would have 
continued to point at the correct images.

In order to get myself out of this, I had to boot the rescue CD and do just 
that.  It wasn't a huge problem to recover, but this never would have 
happened if the default lilo.conf pointed to the images instead of the 
symlinks.
-- 
Silvan Pagan Dragon -=[UDIC]=-
rm -Rf /mnt/windows/windows


Reply via email to