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

Re: Bits from the CD team: plans for debian-cd v3.0

Paul Telford wrote:
> On Thu, 14 Jul 2005, Goswin von Brederlow wrote:
>>Why can't you preseed the netboot or monolithic image?
> The netboot needs access to the us mirror to download the installer
> components.  I need to be able to control which mirror it points at (both
> because we have multiple local mirrors, and because firewall settings
> often make the primary mirror inaccessible without additional
> configuration).  It's impractical to pass the necessary mirror & network
> preseed settings on the command line because we run out of argument space.
> If there's a way around this that I'm not familiar with, I would be happy
> to learn more.

If you have several setups to choose from, you could include them as
multiple preseed.cfg files on the CD, and select the one you want by
specifying preseed/file=/location1.cfg

That combined with the fact that you can specify preseed/url in such a
file, and thus drag in loads of other preseed data means that you won't
need to remaster the CDs very often --- take a look at
http://hands.com/d-i/preseed.cfg for an example of what you need on the CD.

If you hate typing, you can add a different stanza in the isolinux.cfg for
each location, with the relevant preseed/file= on it's command line, and
then just type the location name on the boot prompt.

If you want to get a bit more clever about it, you could write some shell
that works out which location you're at from clues like your current IP
address, and put that into an include_command, so you don't need to tell it
where you are -- the preseed/early_command seems like the place to put
this.  You can do nasty side-effecting stuff with debconf-set in such
scripts, but it takes a bit of testing to make it actually work (again, for
examples, some horrific, see http://hands.com/d-i/)

If you wanted to create an image that was customisable after the event, you
should be able to create one with a preseed file containing lines like:

  d-i mirror/http/hostname string ###MIRROR-HOST-NAME---------REPLACE-ME###

and then simply edit the ISO image to create an image with the right name
in there.  Obviously, you need to check that the string is long enough to
accommodate the longest hostname you need, and you need to be careful about
padding your replacement out to the same length (presumably a \n followed
by some number of #s would do the trick) but you won't need to keep
regenerating the images that way.

/me goes of to wash his brain out with carbolic soap for thinking of such
    revolting hacks ;-)

Cheers, Phil.

Attachment: signature.asc
Description: OpenPGP digital signature

Reply to: