I have three 2TB drives in the machine; I want a RAID5 of ~4TB capacity, and 100GB or so of swap space. No LVM, no encryption, no fanciness. This is easy to do using the interactive installer, but I'm hoping to basically preseed this whole setup.
I had originally planned for the swap space to just be three separate partitions (one per drive, let the kernel do the striping), but then I had read that having the swap as a second RAID1 can be better for the kernel when losing a drive (and as a bonus, the 12.04 example preseed covers this exact scenario).
Here's what I have so far:
d-i partman-auto/disk string /dev/sda /dev/sdb /dev/sdc
d-i partman-auto/method string raid
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-auto/choose_recipe select base
d-i partman-auto/expert_recipe string \
base :: \
1800000 20 2000000 raid \
$primary{ } \
method{ raid } \
format{ } \
. \
100000 10 200000 raid \
method{ raid } \
format{ } \
.
d-i partman-md/confirm boolean true
d-i partman-auto-raid/recipe string \
5 3 0 ext4 / \
/dev/sda1#/dev/sdb1#/dev/sdc1 \
. \
1 3 0 swap - \
/dev/sda5#/dev/sdb5#/dev/sdc5 \
.
At various points in my fiddling, I had it running all the way through successfully, except that the swap partitions were 1TB in size (way too big). At other times, it would work successfully except with no swap partitions created at all. With the current iteration (above), it runs, but gives errors about partitions being in use, or being otherwise unable to proceed. I have tried using dd to zero out the first 512 bytes of each drive, but it doesn't seem to make a difference.
If it would be helpful to do so, I can try to provide a syslog of such a session.
Unfortunately, documentation on the partman preseed options seems a little hazy. Is there an obvious mistake in the above configuration? Thanks for any help.