Grub and Lilo problems on Gentoo 2004.1 Installation
Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Grub and Lilo problems on Gentoo 2004.1 Installation
First off, I have a 'different' setup.
I'm running an AMD k7 900 Mhz
Asus K7v mobo
256 megs pc-133 sdram
MSI Geforce 2 Pro
I have 4 hard drives, 2 roms, and a floppy.
On my onboard 33/66 ata controller I have my cdrw(/dev/hdc) and my dvdrom(/dev/hda).
On my PCI Promise IDE ATA 100/133 Controller I have my hard drives
a 30 GB Western Digital 7200 rpm (hde)
partitioned 4 ways:
hde1 = Windows XP Pro
hde2 = Linux Swap
hde3 = Linux /boot (ext2)
hde4 = Linux root (reiserfs)
a 160 GB Western Digital 7200 rpm (hdf)
-partitioned but are besides the point
a 1.6 gb toshiba -real old (hdg)
a 2.5 gb ibm - real old (hdh)
The Promise IDE ATA 100/133 Controller has its own BIOS and is loaded and configured properly because slackware, redhat, and windows 98,2k,XP have no problems with it.
After going through gentoos handbook i've done everything correctly as far as i know (without any errors) until i get to the bootloader
With lilo, the very first line of the lilo.conf which is:
boot=/dev/hde #installs to MBR
when I write it all up and run /sbin/lilo i get an error
FATAL: raid_setup stat("/dev/hde")
-I tried chaning boot=/dev/hde3
but then it gives me same error: Fatal raid_Setup stat("/dev/hde3")
I asked online in different irc channels, basically they all said use GRUB.
prior to emerging grub, i unmerged lilo with a quick emerge -C lilo
then emerge grub
installs fine
i type in grub to go to its shell
works fine
type in root(space)<tab>
I get an error saying i must specify a block address (it cant find my hde just like lilo couldnt find my hde)
so, just for kix in giggles i tried them all:
root (hd0,2) - error
root (hd0,1) - error
root (hd0,3) - error
root (hd0,0) - error
root (hd1,0) - error
all the way down to
root (hd3,3) - error
NO WORKY!
I'm assuming I went wrong somewhere in the kernel compiling stage with the ide controller drivers or something, that's the only thing i can think of, but before i try and recompile my kernel which is gentoo-dev-sources 2.6.5r1 I figured i'd ask a forum i've typically been able to solve all my problems on without even making a single post.
I found out some new info yesterday on the issue.
For some reason or another my hde is not in the /dev list which would explain why grub and lilo don't know about the device.
So, after chrooting over to /dev/hde4 it disappears from the /dev list, in the kernel i double checked and made sure /dev fs was in there and it is.
To resolve the /dev problem, i used the mknod command:
#mknod /dev/hde b 3 0
#mknod /dev/hde1 b 3 1
#mknod /dev/hde2 b 3 2
#mknod /dev/hde3 b 3 3
#mknod /dev/hde4 b 3 4
so lilo returns a different error stating that hde is a read-only file system
maybe i didn't use the mknod command right, or maybe i'm barking up the wrong tree? any advice?
I'm not sure but having /dev/hda as an optical drive may be causing your problems. Can you not switch /dev/hda and /dev/hde around?
Ah ignore that, I didn't see that your ide controller has it's own bios...how does that work? When you boot it goes through the regular bios then loads the ide controller bios as well? You do have a very different setup
Keep in mind that grub numbers drives from zero, so:
(hd0,0) = /dev/hda1
(hd0,3) = /dev/hda4
(hd2,2) = /dev/hdc3
(hd4,2) = /dev/hde3
etc....
yes, the promise pci 100/133 controller is loaded right after the mobo's bios.
I want grub to detect the hard drives, you're at step 5 and we havent even confirmed step 1.
This is taken exactly from the Gentoo Handbook:
In the example configuration we want to install GRUB so that it reads its information from the boot-partition /dev/hda1, and installs the GRUB boot record on the hard drive's MBR (master boot record) so that the first thing we see when we turn on the computer is the GRUB prompt. Of course, if you haven't followed the example configuration during the installation, change the commands accordingly.
The tab completion mechanism of GRUB can be used from within GRUB. For instance, if you type in "root (" followed by a TAB, you will be presented with a list of devices (such as hd0). If you type in "root (hd0," followed by a TAB, you will receive a list of available partitions to choose from (such as hd0,0).
By using the tab completion, setting up GRUB should be not that hard. Now go on, configure GRUB, shall we? :-)
Code Listing 3: Installing GRUB in the MBR
grub> root (hd0,0) (Specify where your /boot partition resides)
grub> setup (hd0) (Install GRUB in the MBR)
grub> quit (Exit the GRUB shell)
Whenever I get back from seeing the latest Harry Potter movie I think I'll swap hde with hda and see if i cant get the bootloader installed this way, then switch them back so that i can get the full performance potential of my devices.
I had the same problem today with PCI Promise IDE ATA 100/133 Controller.
Now I solved it. You must know that grub detects hd-devices and uses its own names. I have two hard drives at the onboard controller with a Windows and Linux installed and one at Promise IDE ATA 100/133. There should be installed another linux, which should be selectable in grubs menue. The HDs at the onboard controller are called hda and hdb. It's the same within grub's device.map as within the started Linux-System. The HD at the Promise Controller is identified as hde by the new installed Linux-System. So I tried to edit the device.map and put in a line like
hd3 /dev/hde
It didn't work:
Error 21: Selected Disk Does Not Exist
Now I found out, that grub had detected the HD at the promise controller and put it in it's device.map as
hd2 /dev/hdd
In the running linux-system hdd is my cdrom.
It seems that grub only puts floppy- and hd-devices into its device.map and the /dev/... is not the same as in the running linux-system.
Now I can select my second Linux.
In grub's menu.lst I had to add the following lines:
title Linux2
kernel (hd2,0) /vmlinuz root=/dev/hde3
^ ^
| |
from device.map as identified by installed Linux
first partition third partition on hde
as boot partition
with the kernel
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.