Simon Huggins wrote: > Right, after battling with shell I have managed to get preseeded RAIDed > installs in a way which I hope is general enough that you will apply/let > me apply to mainline d-i. > > The basic idea is to: > - make partman-auto able to partition two disks according to a > recipe (normally supplied as an expert recipe). > - slip a couple more scripts into /lib/partman/init.d/ to deal > with bringing the RAID devices up, restarting partman and then > telling partman what filesystems/mountpoints should be on > them. > - let partman do its job and format as it would otherwise. > - enhance grub-installer to let it install onto more than one > disk. > > It appears to work for me. Very glad someone finally had the guts to work on this problem.. Would you like a d-i subversion commit account? You could check this into /people/huggie even before we merge it into mainline. grub-installer: Is there a reason you choose to separate the boot devices with a comma? Seems a space would be more natural, especially since grub-installer/bootdev is documented to support (hdn,n) devices which would break your comma parsing. If it was changed to use spaces, we could update the template for grub-installer/bootdev to document that multiple devices can be entered, and users could use this in expert mode to do all sorts of wild and wonderful things. (Like write grub to multiple disks and a floppy too..) Any chance grub-installer could grub around in the installed system, work out on its own that raid1 was used for a set of devices, and automatically install to them if so? partman-md: Looks fine, I think. Will partman's existing MD code be able to look at what partman-auto-md sets up and allow tweaking of it? partman-auto: Comma-delimited disk list again here, if grub-installer used spaces this should to. Fine otherwise. partman-auto-md: More commas :-) OTOH, you need them here between recipes, so hmm. Well, it would be slightly more in keeping with partman-auto's recipe format to use "." between recipes. The use of hashes to separate devices in your recipes is also odd. I'm pretty sure the progress bar should be easy to fix once the udeb is running, I won't try to fix it by inspection. :-) I didn't look at partman-auto-md's code in detail yet. # Joey rambles about recipe formats, aka a big TODO for later/ignore #{{{ About the recipe format, it would be good if it looked vaguely like partman-auto's, to reduce the learning curve. Maybe something like this, which would be equivilant to the example in your README: 0 1000 1000000 ext3 devices{ /dev/discs/disc0/part1 /dev/discs/disc1/part1 } sparedevices{ } $bootable{ } $lvmok{ } method{ format } format{ } use_filesystem{ } filesystem{ ext3 } mountpoint{ / } . 0 1000 1000000 linux-swap devices{ /dev/discs/disc0/part5 /dev/discs/disc1/part5 } sparedevices{ } method{ swap } format{ } . . It could probably be parsed by partman-auto too, which would go fill out all the files in /var/partman, and then partman-auto-md could just go examine them and work out what to do. But even if a separate parser has to be written it's IMHO worth it for the UI consistency, and shouldn't be too hard, I think. # }}} -- see shy jo, who wants a mail reader with support for folding
Attachment:
signature.asc
Description: Digital signature