I just tried to install Arch using a bootstrap on a desktop with two HDs. I put Arch on the second part of the second HD. That all went fine till it came to installing grub! What an infuriating nightmare. I've wasted about 2 1/2 hours on it and I am so angry I'm positively raging.
I still have no idea what went wrong. Chrooting into the install was out because the devs aren't mounted so I used a livecd to boot into the part - running grub-install /dev/hda or /dev/hdb resulted in the same errors about "the second sector of stage 2 is unknown"
I only actually discovered there was an error cos I ran sh -x grub-install - without that this little gem:
grep 'Error [0-9]*: ' /temp/grub-install.img.865
It would have totally passed me by and I never would have know grub was stuck in an infinite loop!
So, any suggestions please?
Basically the set up is:
/dev/hda1 - WinXp
/dev/hdb1 - swp
/dev/hdb2 - /
That's it, nothing complex
Only thing I can think of is that I had problems when I didn't remount /proc into a chroot environment - so make sure you're remounting proc and dev before you chroot.
mount -o bind /dev /directory_to_be_chrooted/dev mount -o bind /proc /directory_to_be_chrooted/proc
That's what I forgot to do when I first chrooted my installation to reinstall grub.
Err - how? I have not yet done it with chroot method - do you think that would help?
Well, seeing as grub specifically reads its files from /boot, you pretty much have to chroot. I think there's a way to specify the file directly, but chroot-ing is much cleaner
mount -t proc none /mnt/arch/proc
cp /proc/mounts /etc/mtab
I had this same situation for my home PC.
So, what is the solution? i don't want it show GRUB menu everytime my sister booting the PC. I just want to boot Linux (on second hardisk) by BIOS selection. And should i flag root partition to "bootable" when i use cfdisk?
That didn't seem to help...
Now it is telling me no BIOS drives correspond with the disk containing the root partition of my install.
I am running a livecd that uses devfs, could there be some /dev mismatch with my install running udev with regard to creating the /devs?
i havent had to do this but what if you booted from install cd as if to install but go directly to
edit config files type in the info you nedd then run install grub ? just a far fetched thought
or boot from install cd to the root ie vmlinuz root=/dev/discs/discX/partY then mount /boot if its on seperate partition and any other
partitions you may have made /tmp /usr /sbin whatever if you installed lilo run it then boot up machine then run grub-install ,but before you run lilo though check lilo.conf that it installs to /dev/hdb
when booting up hopefully you can hit F8 or in my case hit esc then hit Ctrl to pull up boot menu
to tell machine where to boot to tell it whatever is /dev/hdb if you want to leave whatever boot loader is on /dev/hda alone
chrooting can be a pain /dev/null no permissions or cant chroot no /bin/bash or whatever
chroot is a neat tool but can be a pain at times
also check /boot/grub/device.map heres mine
(fd0) /dev/fd0 (hd0) /dev/hda (hd1) /dev/sda (hd2) /dev/sdb (hd3) /dev/sdc
you may be missing something there i have had this problem of drives missing in this file