I have three identical disks with identical partitioning using the GPT partition table format:
# sudo parted /dev/sda p
Model: ATA WDC WD30EZRX-00M (scsi)
Disk /dev/sda: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Number Start End Size File system Name Flags
1 1049kB 537MB 536MB fat32 EFI System Partition boot
2 537MB 1611MB 1074MB raid1boot raid
3 1611MB 3001GB 2999GB primary raid
The partitions holds:
- Files needed by
UEFIfor booting. Grub's stage 1 resides here. /bootusing theext2filesystem in aRAID1container with/dev/sda2and/dev/sdb2as active devices and/dev/sdc2as a spare. Grub's stage 2 resides here./and other mount points who all useext4,insideLVM, inside adm-crypt+LUKScontainer in aRAID1container with/dev/sda3and/dev/sdb3as active devices and/dev/sdc3as a spare.
The current status:
- The system boots and works fine!
- Partition 2 and 3 are fully fault tolerant by using
RAID1(one of the two active disks can break without data loss, but not both of them). - The UEFI partition is not fault tolerant. The installation only installed its stuff to
/dev/sda.
What I would like to know:
- How do I achieve full fault tolerance by manual work, where I am able to boot from any of my three disks
/dev/sd[abc]? Remember that a GPT partition is identified by its GUID and that all partitions on a machine needs unique GUID`s. - How do I tell Ubuntu to write stuff to all three disks each time a change is made to the EFI boot partition due to an update of Grub2? It would be nice to have a "set once" solution not requiring manual work in the future.