Hi Jerry and all,
As you see, there's no trace of WinXP at all...
There should be nothing that writes to the MBR during normal Linux
operation. The fdisk /mbr should clean up your MBR, and running Lilo
(/sbin/lilo) should place the correct code into the MBR, and it should
point to your kernel.
And so it does.
I run 'fdisk /mbr' from a M$-DOS diskette and I get a "bootmanager-less"
system.
Then I boot from SuSE CDROM and (re)install LILO. Using the LILO menus work
as long as I don't turn off the box (it could be rebooted 'ad infinitum'
without worries)
Someone mentioned this before, but could it be
your BIOS? I can't think of a normal scnerio where the BIOS would make
any changes to your MBR.
Me neither.
As I told you on a previous post, the system has the same hardware it had
before when it ran SuSE 7.3. I just formatted the SuSE partition and
installed 9.0 from scratch.
Yesterday I did a 'lilo -v -v -v' to see some verbose crap. I paste it now,
so maybe there's something I'm overseeing something obvious:
hexe:~ # lilo -v -v -v
LILO version 22.3.4, Copyright (C) 1992-1998 Werner Almesberger
Development beyond version 21 Copyright (C) 1999-2002 John Coffman
Released 01-Nov-2002 and compiled at 00:11:07 on Sep 24 2003.
raid_setup returns offset = 00000000 ndisk = 0
Reading boot sector from /dev/hda
bios_dev: device 1646
bios_dev: masked device 1640, which is /dev/hdd
bios_dev: geometry check found 0 matches
bios_dev: PT match found 1 match (0x81)
Warning: Kernel & BIOS return differing head/sector geometries for device
0x81
Kernel: 12009 cylinders, 16 heads, 63 sectors
BIOS: 1023 cylinders, 255 heads, 63 sectors
Device 0x1646: BIOS drive 0x81, 255 heads, 1023 cylinders,
63 sectors. Partition offset: 67853583 sectors.
Using MENU secondary loader
Calling map_insert_data
Secondary loader: 19 sectors (0x3600 dataend).
Mapping message file /boot/message
bios_dev: device 1646
bios_dev: masked device 1640, which is /dev/hdd
bios_dev: geometry check found 0 matches
bios_dev: PT match found 1 match (0x81)
Device 0x1646: BIOS drive 0x81, 255 heads, 1023 cylinders,
63 sectors. Partition offset: 67853583 sectors.
Calling map_insert_file
Message: 127 sectors.
Boot image: /boot/vmlinuz -> vmlinuz-2.4.21-99-default
bios_dev: device 1646
bios_dev: masked device 1640, which is /dev/hdd
bios_dev: geometry check found 0 matches
bios_dev: PT match found 1 match (0x81)
Device 0x1646: BIOS drive 0x81, 255 heads, 1023 cylinders,
63 sectors. Partition offset: 67853583 sectors.
Setup length is 10 sectors.
Mapped 2330 sectors.
Mapping RAM disk /boot/initrd -> initrd-2.4.21-99-default
bios_dev: device 1646
bios_dev: masked device 1640, which is /dev/hdd
bios_dev: geometry check found 0 matches
bios_dev: PT match found 1 match (0x81)
Device 0x1646: BIOS drive 0x81, 255 heads, 1023 cylinders,
63 sectors. Partition offset: 67853583 sectors.
RAM disk: 556 sectors.
Added Linux *
"ro root=1646 splash=silent acpi=off desktop hdc=ide-scsi hdclun=0
hdc=ide-scsi hdclun=0 showopts"
Name: /dev/hda1 yields MBR: /dev/hda (with primary partition check)
Boot other: /dev/hda1, on /dev/hda, loader CHAIN
bios_dev: device 0301
bios_dev: masked device 0300, which is /dev/hda
bios_dev: geometry check found 0 matches
bios_dev: PT match found 1 match (0x80)
Device 0x0301: BIOS drive 0x80, 255 heads, 1046 cylinders,
63 sectors. Partition offset: 63 sectors.
bios_dev: device 0300
bios_dev: masked device 0300, which is /dev/hda
bios_dev: geometry check found 0 matches
bios_dev: PT match found 1 match (0x80)
Device 0x0300: BIOS drive 0x80, 255 heads, 1046 cylinders,
63 sectors. Partition offset: 0 sectors.
Mapped 6 (4+1+1) sectors.
Added Windows
Boot image: /boot/vmlinuz -> vmlinuz-2.4.21-99-default
bios_dev: device 1646
bios_dev: masked device 1640, which is /dev/hdd
bios_dev: geometry check found 0 matches
bios_dev: PT match found 1 match (0x81)
Device 0x1646: BIOS drive 0x81, 255 heads, 1023 cylinders,
63 sectors. Partition offset: 67853583 sectors.
Setup length is 10 sectors.
Mapped 2330 sectors.
Mapping RAM disk /boot/initrd -> initrd-2.4.21-99-default
bios_dev: device 1646
bios_dev: masked device 1640, which is /dev/hdd
bios_dev: geometry check found 0 matches
bios_dev: PT match found 1 match (0x81)
Device 0x1646: BIOS drive 0x81, 255 heads, 1023 cylinders,
63 sectors. Partition offset: 67853583 sectors.
RAM disk: 556 sectors.
Added Failsafe
"ro root=1646 ide=nodma apm=off acpi=off vga=normal nosmp noapic
maxcpus=0 3"
/boot/boot.0300 exists - no backup copy made.
Map file size: 114688 bytes.
Writing boot sector.
Failsafe check: boot_dev_nr = 0x0300 0xffc0
As for the "Warning: Kernel & BIOS return differing head/sector geometries
for device
0x81" message, I found this thread:
http://www.cs.helsinki.fi/linux/linux-kernel/2003-25/0413.html
The answer (http://www.cs.helsinki.fi/linux/linux-kernel/2003-25/0433.html)
states:
<answer>
Linux does not use the BIOS, and does not use CHS either, so geometry is
totally and completely irrelevant to Linux.
Depending on the precise LILO version, and on whether you give options
like "linear" and "lba32", LILO might or might not be confused.
Test whether you can boot. If booting works all is well. If not
make sure you set at least one of "linear" and "lba32".
</answer>
I tried the 'linear' option but LILO refused to use it as one of my
hard-disks is 32 GB and it won't work.
Thanks,
Martin