LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Grub/MBR/Dual Booting Issues (https://www.linuxquestions.org/questions/linux-newbie-8/grub-mbr-dual-booting-issues-381792/)

Marcus_Crassus 11-10-2005 10:08 AM

Grub/MBR/Dual Booting Issues
 
I had a machine that was dual booting XP and Fedora 4 just fine with grub. I decided to do a clean install of Suse 10 over Fedora b/c I didn't want the issues I was having w/ Fedora to follow.

Like a moron I deleted the linux partitions in XP with Partition Magic. I installed Suse fine, but now I can't boot up. I was getting the grub command line, but now it doesn't get that far (it says 'Error 18' I think). I've been messing with it and making it worse.


The machine has 2 hard drives, a 40 gb drive and 'secondary' 250 gb drive. I think I installed suse on the 250 gb once. Below is the output from fdisk -l and my fstab.

fdisk -l
Disk /dev/hda: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/hda1 * 2 30401 244188000 f W95 Ext'd (LBA)
/dev/hda5 2 19762 158730201 7 HPFS/NTFS
/dev/hda6 19763 19891 1036161 82 Linux swap / Solaris
/dev/hda7 19892 30401 84421543+ 83 Linux

Disk /dev/hdb: 40.0 GB, 40037760000 bytes
255 heads, 63 sectors/track, 4867 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/hdb1 3825 3830 48195 f W95 Ext'd (LBA)
/dev/hdb2 * 1 3824 30716248+ 7 HPFS/NTFS
/dev/hdb5 3825 3830 48163+ b W95 FAT32

Partition table entries are not in disk order

Disk /dev/sda: 131 MB, 131072000 bytes
32 heads, 32 sectors/track, 250 cylinders
Units = cylinders of 1024 * 512 = 524288 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 250 127984 6 FAT16
Partition 1 has different physical/logical endings:
phys=(250, 31, 32) logical=(249, 31, 32)

fstab
/dev/hda7 / reiserfs acl,user_xattr 1 1
/dev/hdb2 /windows/C ntfs ro,users,gid=users,umask=0002,nls=utf8 0 0
/dev/hda5 /windows/D ntfs ro,users,gid=users,umask=0002,nls=utf8 0 0
/dev/hdb5 /windows/E vfat users,gid=users,umask=0002,utf8=true 0 0
/dev/hda6 swap swap defaults 0 0
proc /proc proc defaults 0 0
sysfs /sys sysfs noauto 0 0
usbfs /proc/bus/usb usbfs noauto 0 0
devpts /dev/pts devpts mode=0620,gid=5 0 0
/dev/cdrecorder /media/cdrecorder subfs noauto,fs=cdfss,ro,procuid,nosuid,nodev,exec,iocharset=utf8 0 0
/dev/dvd /media/dvd subfs noauto,fs=cdfss,ro,procuid,nosuid,nodev,exec,iocharset=utf8 0 0
/dev/fd0 /media/floppy subfs noauto,fs=floppyfss,procuid,nodev,nosuid,sync 0 0
none /subdomain subdomainfs noauto 0 0

I can boot the installed suse with the installation disk and I can see all the data on the windows partitions.

Any help would be MUCH appreciated.

Brendan

saikee 11-10-2005 11:05 AM

You need to list Suse's

/boot/grub/menu.lst

here too

Marcus_Crassus 11-10-2005 11:18 AM

Thanks for the reply. Here's the menu.lst.

Can I just modify this to match what's on my system? Of course, I have to get grub working in the first place. Again, I appreciate any help very much.

grub/menu.lst
# Modified by YaST2. Last modification on Thu Nov 10 00:02:29 EST 2005

color white/blue black/light-gray
default 0
timeout 8
gfxmenu (hd0,6)/boot/message

###Don't change this comment - YaST2 identifier: Original name: linux###
title SUSE LINUX 10.0
root (hd0,6)
kernel /boot/vmlinuz root=/dev/hda7 vga=0x31a selinux=0 resume=/dev/hda6 splash=silent showopts
initrd /boot/initrd

###Don't change this comment - YaST2 identifier: Original name: windows###
title Windows
chainloader (hd1,1)+1

###Don't change this comment - YaST2 identifier: Original name: floppy###
title Floppy
chainloader (fd0)+1

###Don't change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe -- SUSE LINUX 10.0
root (hd0,6)
kernel /boot/vmlinuz root=/dev/hda7 vga=normal showopts ide=nodma apm=off acpi=off noresume selinux=0 nosmp noapic maxcpus=0 edd=off 3
initrd /boot/initrd

###Don't change this comment - YaST2 identifier: Original name: 2.6.13-15-default###
title 2.6.13-15-default
root (hd0,6)
kernel /boot/vmlinuz-2.6.13-15-default root=/dev/hda7 vga=0x31a selinux=0 resume=/dev/hda6 splash=silent showopts
initrd /boot/initrd-2.6.13-15-default

saikee 11-10-2005 05:55 PM

I couldn't find an obvious fault in Grub's boot menu.lst

Error 18 is "selected clinder exceeds maximum supported by the BIOS"

You also made a statement hinting the 250Gb as the "secondary" but the partitiion table indicates that it is hooked as the master to your first IDE cable (because it has hda designation).

If you have re-arranged the booting order, say asking BIOS to boot the 40Gb then Grub will to try to find (hd0,6), which is hda7 as Grub counts from 0, from the 40Gb disk and the Error 18 will be justisfied.

Since you can get into Suse why not log in as root and run Grub in terminal mode to check the disk order. Just type

grub
geometry (hd0)

will list out all the partitions of the first disk as handed over from the BIOS and this will confirm which one is the 1st bootable disk.

In Grub shell, with a Linux already running you can't boot another system. However many command can be executed including

Root (hd0,6)

To see if Grub really reports an error 18

Marcus_Crassus 11-10-2005 07:34 PM

OK, I tried what you suggested, but I'm still getting the Error 18 message

Marcus_Crassus 11-10-2005 07:36 PM

here is the outputs from the grub geometry command


hd0
drive 0x80: C/H/S = 30401/255/63, The number of sectors = 488397168, /dev/hda
Partition num: 4, Filesystem type unknown, partition type 0x7
Partition num: 5, Filesystem type unknown, partition type 0x82
Partition num: 6, Filesystem type is reiserfs, partition type 0x83


hd1
drive 0x81: C/H/S = 65535/16/63, The number of sectors = 78198750, /dev/hdb
Partition num: 1, Filesystem type unknown, partition type 0x7
Partition num: 4, Filesystem type is fat, partition type 0xb

Marcus_Crassus 11-10-2005 07:37 PM

here "are" the outputs....

saikee 11-10-2005 08:09 PM

OK I think I found the problem but have no cure.

Your first disk appears satisfactory

Disk /dev/hda: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

which match up with Grub's report of

hd0
drive 0x80: C/H/S = 30401/255/63, The number of sectors = 488397168, /dev/hda

The second disk shows up disagreement

Disk /dev/hdb: 40.0 GB, 40037760000 bytes
255 heads, 63 sectors/track, 4867 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

has 4867 cylinders, 255 heads and 63 sectors but Grub reports

hd1
drive 0x81: C/H/S = 65535/16/63, The number of sectors = 78198750, /dev/hdb

65535 cylinders with 16 heads and 63 sectors.

I have no idea how it was caused but you might consider removing the second disk while trying to boot the Suse 10 in 250Gb disk.

I am aware of Fedora has caused this type of the geometry error in the hard disk before when a user did not employ LBA mode of addressing prior to installing Fedora. You should isolate this problem which may be the left-over from the Fedora.

The content of the second disk should be recoverable so don't do anything stupid with it, just disconnect it temporarily.

Marcus_Crassus 11-11-2005 07:46 AM

If I isolated it, what could be done to fix it?

saikee 11-11-2005 08:07 AM

If I were to face this problem then I will get every system of the good single disk in working order first, with the dodgy disk removed.

Then I would make a Grub floppy unattached to an operating system so that it will have no need to call up or check the dodgy disk.

I then will restore the connection of the dodgy disk and boot to Grub prompt (unattached to a system).

To avoid problem I would boot up XP and use XP to check the dodgy disk. I shall avoid writing anything on it to upset its current state. If the data is salvageable I will move everything to the good disk.

After I check that I have got all my data then I delete everything in the dodgy disk and start a new life with it in Linux.

I shall check the number of heads regularly to ensure it is 255.

----------------------------------

If I meet difficulty with the dodgy disk I will use the BIOS to arrange the disk to read/write with the cylinder/head/sector as recorded by Grub in this thread.

Linux can be used to re-arrange the cylinder/head/sector but I don't have a history of what was before and so I would stick with Windows only environment, as the partitions involved are non-Linux.

Marcus_Crassus 11-11-2005 09:48 AM

OK, I'll give that all a shot and report back.

Marcus_Crassus 11-14-2005 02:37 PM

F*ck, F*ck, F*ck

I opened the box and unplugged the HD. Turn on the power and the fans spin once and I get a little chirp out of the power supply. I guess I shorted it or something. FVCK ME!

tinybit 11-18-2005 09:32 PM

GRUB and LILO always conflict with Windows. And GNU GRUB is not so robust, causing many problems during boot.

So try GRUB for DOS please. It is a cross-platform boot loader based on GNU GRUB. The GRUB.EXE can be started from DOS/Win9x; and GRLDR can be started from BOOT.INI of Windows NT/2K/XP/2003; and even more, the GRUB.EXE can be started from LINUX via the KEXEC tool.

By using GRUB.EXE or GRLDR, you don't have to touch your MBR. It is the safest way coexisting with DOS/Windows.

You needn't install GRUB for DOS. Just run GRUB.EXE from DOS, or append a line of "C:\GRLDR=START GRUB" into your BOOT.INI(restart and select the "START GRUB" menu item), that will do.

Download GRUB for DOS here: http://freshmeat.net/projects/grub4dos/

There is a fat12grldr.img file with the GRUB for DOS release. You can create a GRUB bootable floppy with this fat12grldr.img file.

Or, you can just copy GRUB.EXE to your DOS floppy and run GRUB.EXE to enter the GRUB environment.


All times are GMT -5. The time now is 08:49 AM.