STATUS: solved
michaelk posted a link to the solution in post #4 -- thanks, Michael.
Hello there
I want to be able to dual boot into either WinXP or Woody (Debian 3.0 stable); I'd prefer doing this with LILO, but whatever works best...
anyways, on to the gory details of why it doesn't work:
Partition information:
hda1 - 100M - /
hda2 - 100M - /tmp
hda3 - 800M - swap
hda5 - 1G - /var
hda6 - 8G - /usr
hda7 - 8G - /home
hdb1 - 72G - WinXP bootable
hdb5 - 32G - FAT32
hdb6 - 8G - NTFS
in the boot record of hda (MBR), I have LILO; in the boot record of hdb, I have whatever windows XP put there - microsoft never was informative.
When I start up LILO, i get a two-item menu: "Linux" and "Windows XP"; Linux works fine, but Windows XP just halts after printing "starting Windows XP" (or something similar). I have waited approximately two minutes for anything to happen (this should be more than enough to bring up the "loading XP" splash screen); no result. Pressing C-M-del has no effect; pressing the power button turns off the system (under Windows XP, it does the equivalent of "shutdown -h now"). Once, I've been put to a halt where C-M-del actually rebooted, but I've been unable to reproduce the situation (however, I'm confident that C-M-del didn't work "just by fluke").
My BIOS allows me to switch the order of my two hard disks, and thus I can boot XP directly (from the hdb boot record, without going through LILO), but this is not a good enough solution for everyday use. As a remark, the same could also be done by switching jumpers around (I should think).
I tried searching the web, but all solutions seemed to instruct me to edit lilo.conf in a way that doesn't work (more on this later); I read through the linuxquestions.org threads on "LILO", no help. I read the LILO manual ("info lilo"), which didn't help me out either. Did I miss anything here?
anyways, here's my lilo.conf:
--- BEGIN ---
lba32
boot=/dev/hda
root=/dev/hda1
install=/boot/boot-menu.b
map=/boot/map
delay=20
prompt
timeout=150
vga=normal
default=Linux
image=/vmlinuz
label=Linux
read-only
image=/vmlinuz.old
label=LinuxOLD
read-only
optional
other=/dev/hdb1
table=/dev/hdb
label="Windows XP"
---- END ----
(comments and blank lines are removed)
I have also tried the following lilo.conf's (only showing what's different from above):
---
other=/dev/hdb1
table=/dev/hdb1
---
other=/dev/hdb
table=/dev/hdb1
---
other=/dev/hdb
table=/dev/hdb
---
whenever I run lilo with lilo.conf looking like the above examples, it fails with this message (brackets mark where the output goes, they are not in the output of lilo):
--- BEGIN ---
[stdout]Added Linux *
[stdout]Skipping /vmlinuz.old
[stderr]Fatal: Partition entry not found
---- END ----
I've read tldp.org/HOWTO/Linux+NT-Loader.html, and I might experiment with this (no I've done no testing with it so far); however, I'd strongly prefer to use LILO (or maybe even GRUB, once I get denewbiefied)
---
Miscellaneous stuff:
when running "ps -A", the following gets fed to stderr:
---
{module_list} {module_list_R__ver_module_list}
Warning: /boot/System.map-2.2.20 does not match kernel data.
---
followed by the table of processes.
does this have any relevance? should I do something about this?
---- END RANT ----
so, whatever helpful insight, experince or advice you provide will be greatly appreciated. Actually, thanks for just reading this rather lengthy post
- Jonas
oh, I nearly forgot my own conclusion: I guess the problem is that lilo transfers control to the boot sector of hdb1 instead of the boot record of hdb which XP requires it to. Am I totally wrong here?
---- system information:
Intel P4 processor
Intel motherboard with onboard LAN (gigalan? where's that spec sheet when I need it?) and Sound.
old and dusty SB PCI 128
ASUS V3800 video card
Realtek RTL 8139 PCI fast ethernet NIC
Philips 40x/16/10 CD-burner
erm... "MTRP" 48x CD-ROM drive
one no-name floppy drive
... and what not ... if you want more info, let me know.