Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I'm having some problems getting GRUB configured for Ubuntu 12.04LTS on a fake RAID 0. I can either get the GRUB rescue prompt at startup, or just a GRUB prompt but I cannot boot to Ubuntu manually. How can I configure the GRUB to actually use the Ubuntu install?

The steps taken:

Installing Ubuntu on fake raid

The Ubuntu installer cannot install Ubuntu on the drive. After defining the partitions to use it fails with "Error: ???", pressing OK terminates the installer.

Therefore, I used GParted to configure the partitions:

  • /dev/mapper/sil_agadaccfacbg : (the RAID configuration, created partition):
  • /dev/mapper/sil_agadaccfacbg1:ext2, 200MiB, (with 'boot' flag)
  • /dev/mapper/sil_agadaccfacbg3:ext2, 67.75GiB, (which will contain Ubuntu)
  • /dev/mapper/sil_agadaccfacbg2:extended, 1.00GiB, (for swap) Contains:
    • /dev/mapper/sil_agadaccfacbg5: unknown

Because of the fake-RAID, I already mounted the destination partitions before running the Ubuntu installer:

> mkdir /mnt/boot  
> sudo mount /dev/mapper/sil_agadaccfacbg1 /mnt/boot  
> mkdir /mnt/ubuntu  
> sudo mount /dev/mapper/sil_agadaccfacbg3 /mnt/ubuntu  

In the installer I chose the following partition usage:

  • /dev/mapper/sil_agadaccfacbg1 ext2, mount at /boot (209MB)
  • /dev/mapper/sil_agadaccfacbg3 ext2, mount at / (72751MB)
  • /dev/mapper/sil_agadaccfacbg5 swap

Device for boot loader installation:

  • /dev/mapper/sil_agadaccfacbg, linux device-mapper (striped) (74.0GB)

This will install Ubuntu, but will fail to install GRUB (it seems to use /dev/sda no matter which one I choose)

Installing GRUB with dpkg-reconfigure

I followed this guide, but adapted it for two partitions:

sudo mount /dev/mapper/sil_agadaccfacbg3 /mnt/ubuntu
sudo mount --bind /dev /mnt/ubuntu/dev
sudo mount --bind /proc /mnt/ubuntu/proc
sudo mount --bind /sys /mnt/ubuntu/sys
sudo mount /dev/mapper/sil_agadaccfacbg1 /mnt/boot
sudo mount --bind /boot /mnt/boot
sudo chroot /mnt/ubuntu
dpkg-reconfigure grub-pc

However, it does not ask where to install GRUB (I should choose /dev/mapper/sil_agadaccfacbg somewhere..)

After reboot I get the GRUB rescue prompt with message no such device

Installing GRUB with grub-install

After the same mount commands as above, I continued with:

> sudo grub-install --root-directory=/mnt/boot /dev/mapper/sil_agadaccfacbg  

This gives the following message:

/usr/sbin/grub-probe: error: cannot find a device for /mnt/boot/boot/grub (is /dev mounted?)

It does succeed when mounting just the boot partition :

sudo mount /dev/mapper/sil_agadaccfacbg1 /mnt
sudo grub-install --root-directory=/mnt/ /dev/mapper/sil_agadaccfacbg

This finishes with:

Installation finished. No error reported.

After reboot I get the GRUB console, with welcome text.

Attempting to manually start Ubuntu:

ls

  • (hd0) (hd0,msdos3) : (Ubuntu install partition)
  • (hd0,msdos1) : (Ubuntu boot partition)
  • (hd1) (hd1,msdos1) : (Ubuntu live USB)

ls (hd0,msdos3)/

contains:

- vmlinuz      - lib/        - tmp/
- initrd.img   - mnt/
- var/         - proc/
- boot/        - root/
- etc/         - run/
- media/       - sbin/
- bin/         - selinux/
- dev/         - srv/
- home/        - sys/ 

ls (hd0,msdos1)/

contains:

-grub/
-boot/
-initrd.img-3.8.0-29-generic
-vmlinuz-3.8.0.29-generic
-config-3.8

linux (hd0,msdos3)/vmlinuz

This returns "error: out of disk"

Installing GRUB on Ubuntu partition with grub-install

> sudo mount /dev/mapper/sil_agadaccfacbg3 /mnt  
> sudo grub-install --root-directory=/mnt/ /dev/mapper/sil_agadaccfacbg  

This finishes with message:

> Installation finished. No error reported.

After reboot get the message "error: out of disk" and the GRUB rescue prompt.

Configuring GRUB with grub-mkconfig

Attempting to run grub-mkconfig with different destinations results in the same message:

/usr/sbin/grub-probe: error: cannot find a device for / (is /dev mounted?).

Remarks:

Initially I didn't use a separate /boot partition, but the GRUB install then also failed. Because some mention that a small partition at the beginning of the drive is necessary on old machines, I retried with a /boot partition

This is a single boot (no other OS's installed/used)

*With fake RAID I mean a software/bios RAID, provided with the motherboard.

share|improve this question
    
When you say 'fake RAID' do you mean a software RAID (vs. Hardware)? –  No Time May 30 at 21:16
    
As long as your / (root) is fully inside the first 100GB then you do not need /boot as a separate partition. Generally better to have a smaller / of 20 or 25 GB and use rest of drive as /home or as data partition(s). Part of issue may be using ext2. I have seen others have issues with new grub2 and very old ext2 formats. You have to install grub to the root of the RAID or sil_agadaccfacbg without any partition number. To reinstall grub with a separate /boot you have to mount both the /boot & the / partitions to correctly install it. –  oldfred May 30 at 23:41
    
But is mounting both the /boot and the / partitions as mentioned under "dpkg-reconfigure" the correct way? –  gerben Jun 5 at 9:44

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.