[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Preseeded RAIDed installs



On Mon, Mar 13, 2006 at 12:21:26AM -0500, Joey Hess wrote:
> 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..

heh.

> Would you like a d-i subversion commit account? You could check this
> into /people/huggie even before we merge it into mainline.

Sure, I'm huggie on alioth already.

> grub-installer:
> Is there a reason you choose to separate the boot devices with a comma?

Nope, just random really.

> 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..)

Changing to a space is trivial certainly.

> 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?

Probably and that would be useful for manual RAID installs too.

> 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?

I haven't actually tested this - I was interested in the preseeding side
but I don't see why it wouldn't just work already.

> partman-auto:
> Comma-delimited disk list again here, if grub-installer used spaces this
> should to. Fine otherwise.

Sure.

> 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 needed /something/ and I needed two separators.  I'll admit not giving
this huge amounts of thought - I wanted to prove it was all possible
first.

> 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. :-)

'k

> I didn't look at partman-auto-md's code in detail yet.

Fair enough.  I'd like someone to mostly because it abuses
partman/init.d and restarts partman and I'd like someone to either throw
their hands up in horror (and ideally tell me a better way) or go "Hmm,
ok I can see why you're doing that".

> # 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{ } .
> .

You've missed out the raid type but other than that it looks doable.

> 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.

I'm not convinced about partman-auto filling out /var/lib/partman with
the details about which devices to RAID together.  Where would this sit
naturally given it (by definition really) affects more than one device?

It could be written to /var/lib/partman/partman-auto-raid-recipes or
some such and that could be the trigger so you'd only preseed
partman-auto instead of all of it.

But yes, if you add me to the alioth project I'll stick this up
separately for now and hack on it a little.

Simon.

-- 
UK based domain, email and web hosting ***/    Hmmm. . A little sticky.  /*
http://www.blackcatnetworks.co.uk/     **/   I'll get one of my boys up /**
sales@blackcatnetworks.co.uk           */  here with a can of WD-40. - /***
Black Cat Networks                     /          Fred, Galaxy Quest. /****

Attachment: signature.asc
Description: Digital signature


Reply to: