On Thu, 2007-08-09 at 22:52 +0800, Art Fore wrote:
On Thu, 2007-08-09 at 09:44 -0400, Ian Marlier wrote:
On 8/9/07 9:22 AM, "Jack Malone"
wrote: I have ra1d1 setup as follows.
MD3, 20 GB as / (SDA2, SDC2) MD4, 267 GB as /home (SDA3, SDC3) Swap as SDA5 1 gb and SDC5 1 gb
Installation went fine on installation, but on reboot, it says disk has no operating system.
What did I do wrong and how can I fix it?
Without more info I would check to make sure that you have the right disk set to boot from in the bios. I had this problem ones and had to set it to boot from device / driver that the raid setup was on in the bios.
Jack Malone
By default, opensuse wants to install grub onto the root partition. However, with an md root, that won't work.
Basically, you need to boot into the rescue system, get the md array up, bind /proc and /dev into it, and then install grub onto the MBR.
(I'm typing those commands out from memory, so I may have the syntax slightly wrong, but it should be pretty close.)
Getting the MD array up is a little tricky. Once you're in the rescue system, you need to edit /etc/mdadm.conf, and add the lines DEVICE /dev/sda2 DEVICE /dev/sdc2
Then you can do `mdadm --examine --scan`, and it should find the array. Verify that the correct info is output to the console, and if so do `mdadm --examine --scan >> /etc/mdadm.conf`, and then `mdadm --activate --scan` to get the array active.
Then, do `mount /dev/md3 /mnt`.
Bind the /proc and /dev filesystems to the md array by doing `mount -o bind /proc /mnt/proc` `mount -o bind /dev /mnt/dev`
Chroot to your real system by doing `chroot /mnt`
Enter grub, by doing `grub`.
In the grub shell, do `root (hd0,1)` And then `setup (hd0)` `setup (hd2)`
That should get the correct config installed onto the MBR of the disks. Note that by doing the setup for both hd0 and hd2, you've got the boot info installed on the MBR of sdc as well; that way, if the first disk fails, you don't need to repeat this process -- your machine will be bootable using the remaining disk.
(yes, setting root to (hd0,1) is counterintuitive, since that's just a RAID member. But, it works...)
This process is actually one of the things that drives me batty about opensuse. I'm using it in a production environment, and have bunches of machines with md roots, and have to do this with every single one of them. The bootloader installation part of the installer is simply incapable of dealing with an install onto the MBR of two separate disks. I don't know why, but it is.
HTH,
Ian
Thanks for the info. I will try that tomorrow. It is getting pretty late here in Taiwan now.
Art
This worked up to "mdadm --activate --scan" where mdadm said no such command --activate or something to that effect. Went ahead and mounted md3 on /mnt, chroot to /mnt, done a grub, then root (hd0,1) it comes up no such device. Found a suse howto at http://en.opensuse.org/How_to_install_SUSE_Linux_on_software_RAID which worked, of course I had to do a reinstall. Guess the /boot partition is needed for suse. Art -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org