ReliableRaid
RAIDs (Redundant arrays of independent disks) allow systems to keep runing even if some parts fail. With hardware raids you just plug more then one disk side by side. A buzzer or email watchdog will notify you if a disk fails and you have to plug a new (spare) one to up the redundancy again.
Unfortunately ubuntu's md (software) raid setup seems to suffer from a little incompleteness.
The mdadm assembling has been moved to the hotplug system (udev rules).
However:
The proper mdadm --incremental option does not work in initramfs (not creating device nodes) 251663
The proper command to start only selected hotplugable raids degraded (i.e. rootfs after timeout from initramfs) is not available. 251646
The proper "mdadm --incremental --scan --run" command to start all remaining hotplugable raids degraded (after system has been up for a say 20 sec timeout) does not start anything. 244808
- Using the legacy method to start an array degraded breaks later --incremental (re)additions.
mdadm still reads a static /etc/mdadm/mdadm.conf containing UUIDs (does not just go assembling matching superblocks) and refuses to assemble other arrays hotpluged into the system. (breaks any actual md hotpluging) 252345
- The initramfs boot process is not (a state machine) capable of assembling the root setup from devices appearing in any order and degrading necessary raids after some time.
For degraded regular (non-rootfs) arrays there isn't any init script to start/run them at all. 259145 non-root raids fail to run degraded on boot
When fixing ReliableRaid issues be aware of 244810 inconsistency with the --no-degraded option.