18

Many people claim that it is impossible to install Ubuntu onto RAID 1 with the Desktop CD. Is this really true? If not, how can it be done?

26

Edit: This guide does not take UEFI boot into account. Additional or different steps may be required if UEFI boot is desired. This guide assumes legacy boot!

It is true, that the ubiquity installer does not know about mdadm software raid devices. Also it is true, that the live-cd is missing the mdadm raid administration tool. However, doing some work by hand, it is very much possible to install Ubuntu on RAID1.

In the following I will assume two identical hard disks (/dev/sd[ab]) which will be used completely for our new install. To simplify the recovery if one drive fails, there will be only one mdadm-volume /dev/md0 which will then be partitioned for /, swap and data storage, e.g. /home.

After booting up the live-cd and (if necessary) configuring network access, open up a terminal and assume root access sudo -s

apt-get install mdadm

Now we create a single primary partition each of /dev/sda and /dev/sdb from sector 2048 to the end of the disk, for example using sudo fdisk. I also like to already set the partition type to fd for linux raid autodetection. The keystroke-sequence in fdisk (if the disk is emptyin the beginning, meaning no partitions) is n <return> p <return> 1 <return> 2048 <return> <return> t <return> fd <return> w <return>.

Now we create the mdadm volume:

mdadm --create /dev/md0 --bitmap=internal --level=1 -n 2 /dev/sd[ab]1

I noticed, that the ubiquity installer also does not quite manage to create partitions inside this /dev/md0, so I also did this by hand - again using fdisk. So on /dev/md0 create the following partitions:

  • /dev/md0p1 for your root filesystem, the size of course depending upon how much software you are going to install.
  • /dev/md0p2 for swap, the size of course also depending on what you use the machine for and how much ram it's got
  • /dev/md0p3 for /home, all the space that's left

After that we can begin the Installation. Make sure to start the installer from the terminal with the -b option, because installing the bootloader will fail anyway:

ubiquity -b

Make sure to go for manual partitioning and "use" the 3 partitions you just created and tick the format checkbox for / and /home so a filesystem will be created.

After the installation the system is not yet bootable, so do not restart the box right away. We need to chroot into the installed system and fixup some stuff:

sudo -s
mount /dev/md0p1 /mnt
mount -o bind /dev /mnt/dev
mount -o bind /dev/pts /mnt/dev/pts
mount -o bind /sys /mnt/sys
mount -o bind /proc /mnt/proc
cat /etc/resolv.conf >> /mnt/etc/resolv.conf
chroot /mnt
apt-get install mdadm
nano /etc/grub.d/10_linux  # change quick_boot to 0
grub-install /dev/sda
grub-install /dev/sdb
update-grub
exit

Now the newly installed system is ready to boot. Have fun!

  • 2
    Will it ever be supported out of the box? Is there any reason not to offer this feature. In the perfect world there should be option for RAID install. – umpirsky Jan 17 '15 at 11:17
  • @Mwithii says: "The guide is ok, except for the "apt-get install mdadm" in chroot that was not working as is. I had to "cp /etc/resolv.conf /mnt/etc/resolv.conf" to solve as described here: ubuntuforums.org/…" – MadMike Feb 6 '15 at 12:26
  • 1
    prob. easier to move the already-downloaded mdadm .deb from /var/cache/apt/archives into /mnt before chrooting in, and dpkg -i to install it. – Peter Cordes Feb 15 '15 at 6:25
  • 2
    Grub install failed for me: grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible. grub-install: error: embedding is not possible, but this is required for RAID and LVM install. Looks like boot parttition is missing? Maybe creating bios boot partition on both sda and sdb will help, like on serverfault.com/questions/386041/…? – umpirsky May 2 '15 at 12:28
  • 1
    @umpirsky I added a warning to the guide. Please look into askubuntu.com/questions/660023/…. – Sunday Jun 15 '16 at 8:51
3

Do not install Ubuntu Desktop CD with RAID 1. My advice:

  1. Use the Ubuntu Server CD to have a guided RAID 1 install. The manual for this is here (ignore the LVM part, not needed) :
    https://help.ubuntu.com/lts/serverguide/advanced-installation.html
  2. After that install the Ubuntu desktop environment with
    sudo apt-get install ubuntu-desktop
  3. Reboot and you have a Ubuntu desktop (installed with the server cd).
  • 1
    I think it is well known (and to be expected), that the server installer has RAID support. This question however was specifically about clarifying wether the desktop installer could be used anyhow. But thanks for letting us know anyway! – Sunday Jun 5 '15 at 9:30
-1

I haven't tried, but just came accross http://www.salamander-linux.com/.

Salamander is a modified version of the default installer for Ubuntu Linux, Ubiquity. This modified installer allows users to easily install Ubuntu Linux onto a Software RAID array. No special hardware is required -- the Salamander installer can be used on any system with multiple hard disks.

  • this seems pretty outdated from 2010. – therealmarv Jun 3 '15 at 20:15
  • @therealmarv Yes, must find new solution. – umpirsky Jun 4 '15 at 7:45
  • I think the overall better solution is to use a Ubuntu Server CD with very good RAID1 support and install everything like in the official docs: help.ubuntu.com/lts/serverguide/advanced-installation.html then at the end install sudo apt-get install ubuntu-desktop and the server is also a desktop. – therealmarv Jun 4 '15 at 10:55
  • @therealmarv Maybe, but I read somewhere that there are some drawbacks with this approach. Desktop distribution is somehow different. – umpirsky Jun 4 '15 at 11:02

protected by Community Feb 6 '15 at 12:37

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.