I have a stable Ubuntu (14.04.3) Server-powered file server that I have set up, and want to set up a RAID10 array for it. For reference, I have been following this guide so far, but using RAID10 instead of RAID1.
My main goal is to make the system able to boot even if the bios_grub RAID devcice becomes degraded / a drive fails / etc.
I have 4 identical drives, with only one in use currently (/dev/sda). It has the following partition table:
Disk /dev/sda: 3001GB Sector size (logical/physical): 512B/4096B Partition Table: gpt Number Start End Size File system Name Flags 1 1049kB 2097kB 1049kB bios_grub 2 2097kB 2984GB 2984GB ext4 3 2984GB 3001GB 16.9GB linux-swap(v1)
Identical drives sdb, sdc, and sdd have had the partition table of sda copied to each of them, using sgdisk. I am now at the point of assembling my RAID devices.
I want to create:
- /dev/md0, consisting of /dev/sda1, /dev/sdb1, /dev/sdc1, and /dev/sdd1
- /dev/md1, consisting of /dev/sda2, /dev/sdb2, /dev/sdc2, and /dev/sdd2
- /dev/md2, consisting of /dev/sda3, /dev/sdb3, /dev/sdc3, and /dev/sdd3
with all /mdX being of type RAID10. /dev/md1 and /dev/md2 will be created using:
sudo mdadm --create /dev/mdX --chunk=256 --level=10 -p f2 --raid-devices=3 /dev/sdaX /dev/sdbX /dev/sdcX /dev/sddX
From what I've gathered, my /dev/md0 array should be created using:
sudo mdadm --create -e 0.90 /dev/md0 --chunk=256 --level=10 -p f2 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
using the v0.90 metadata, for better compatibility with GRUB.
I know that I need to create filesystems for each /mdX, before I can mount them, or try to reboot. The swap device should be done using:
sudo mkswap /dev/md2
and the main storage device (/md1) should be done using
sudo mkfs.ext4 /dev/md1
My question(s) are these:
- What "filesystem" do I need to create for /dev/md0, or do I even need to do anything else? Most guides I see use a separate /boot partition, but I just have my bios_grub partition.
- What else do I need to do to install GRUB correctly, so that the system can boot from any of the drives? If a drive fails or is physically removed from the machine, I still want the system to be able to boot.
I know I still need to edit my /etc/mtab and /etc/fstab files, but want to get the correct GRUB setup before proceeding with creating these arrays (ie, while I know my system will still boot!)
Thanks for the help!