Monday, February 27, 2012

[Solved] Fatal: Setup Length Exceeds 31 Maximum; Kernel Setup will Overwrite Boot Loader

I have Arch Linux and Backtrack on my laptop. Both of them I think now are the harmonious couple.. I installed more 1 OS (dual boot), because dual boot is more secure than single boot. When 1 OS suddenly get error, we can use other OS for work. There is no guarantee when we use just 1 OS that there is no error, so when work we couldn't calm used just 1 OS.

After we have dual boot (or maybe multi boot), we can manage it from boot loader. The boot loader is the first software program that runs when a computer starts. It is responsible for loading and transferring control before initiating the boot process to the Operation System which we choose. The boot loader consists of GRUB, GRUB2, LILO, or Syslinux.

Actually i have personal problem with GRUB/GRUB2, so i prefer install the LILO. After install it, unfortunately i got error like this:

Fatal: Setup length exceeds 31 maximum; kernel setup will overwrite boot loader

From the developer of LILO said:

I am the lilo developer. I have heard from the problem and I will generate a patch. Together with some other patches I will create the next release version 23.2 until tomorrow

Got one clue, the LILO version must 23.2! Check version of my recent LILO, it is 22.8.

Then i search about LILO repo version of 23.3 from ubuntu web official.

I installed it, but got error again:

# dpkg -i lilo_23.2-2_i386.deb
dpkg: regarding lilo_23.2-2_i386.deb containing lilo, pre-dependency problem:
 lilo pre-depends on dpkg (>=
  dpkg is installed, but is version
dpkg: error processing lilo_23.2-2_i386.deb (--install):
 pre-dependency problem - not installing lilo
Errors were encountered while processing:

Hmmm,, form the report error above, the version of dpkg must >= and my current version still

We just search again dpkg repo with version >= from ubuntu web official.

Then try install both of them with..

# dpkg -i dpkg_1.15.7.2ubuntu2_i386.deb

# dpkg -i lilo_23.2-2_i386.deb

After that, we check the version of LILO now,

# lilo -V

The version have already 23.2. Then, we execute again with:

# lilo

Finally, the LILO have successfully installed on my boot loader.

About the configuration of my LILO from /etc/lilo.conf:

boot = /dev/sda

bitmap = /boot/slack.bmp
bmp-colors = 255,0,255,0,255,0
bmp-timer = 65,27,0,255

timeout = 300
vga = 773

# Linux bootable partition config begins
#image = /boot/vmlinuz-
image = /boot/vmlinuz-3.2.6
#initrd = /boot/initrd.img-
initrd = /boot/initrd.img-3.2.6
root = /dev/sda1
label = Bt
# Linux bootable partition config ends

# Linux bootable partition config begins
image = /arch/boot/vmlinuz-linux
initrd = /arch/boot/initramfs-linux.img
root = /dev/sda2
label = Cb
# Linux bootable partition config ends