description of preseeding netcfg settings and when to use preseed file and when to use kernel command line settings not clear enough

Bug #262330 reported by Daniel Abel
22
This bug affects 4 people
Affects Status Importance Assigned to Milestone
installation-guide (Ubuntu)
Triaged
Medium
Unassigned

Bug Description

Following a discussion with cjwatson on #ubuntu-installer :

The installation guide at https://help.ubuntu.com/8.04/installation-guide/i386/preseed-contents.html
mentions:
""""
Of course, preseeding the network configuration won't work if you're loading your preconfiguration file from the network. But it's great when you're booting from CD or USB stick. If you are loading preconfiguration files from the network, you can pass network config parameters by using kernel boot parameters.
"""

Based on this I would assume that when creating a custom installer based on the mini.iso netinst image, because one "boots from the CD", network config parameters can be put in the preseed file. However, as cjwatson explained, the mini.iso reads the CD _after_ configuring the network and thus network config options have to be given as kernel boot parameters.

I suggest rewording the above paragraph to:
"""
Of course, preseeding the network configuration won't work if you're loading your preconfiguration file from the network. But it's great when you're installing from CD or USB stick. If you are loading preconfiguration files from the network or booting from a "netinst" CD image, you have to pass network config parameters by using kernel boot parameters. (When using the "netinst" image, although the kernel boots from the CD, the preseed file is only read after configuring the network; even the CD drivers are loaded from the network.)
"""

(note: I am not sure "netinst" is the right word here, I think other parts of the ubuntu homepage, for example where one can download the cd images, use a different terminology)

Also, what kernel parameters to use should be documented. Is it simple that any
"d-i netcfg/foo type bar"
can be put on the kernel parameters as
"netcfg/foo=bar"?

Revision history for this message
Colin Watson (cjwatson) wrote :

(The correct terminology is "netboot". "netinst" historically has meant something sufficiently different to be confusing.)

Changed in installation-guide:
importance: Undecided → Medium
status: New → Triaged
Revision history for this message
Colin Watson (cjwatson) wrote :

Similarly:

<elmo> a) I think it'd be wonderful to document the minimum non-preseed gunk you need to pass as kernel arguments when preseeding from the network; if I hadn't had an example to crib from, I probably would have got quite frustrated with that

We should probably create a section that talks about all this explicitly, rather than it being spread around all over the place. It basically is all there, but you have to understand the whole preseeding manual before you know what to do.

Revision history for this message
Etienne Goyer (etienne-goyer-outlands) wrote :

Colin, shouldn't d-i just reprocessed the netcfg directive from the network-retrieved preseed file? Intuitively, you would expect d-i to do the right thing and apply the netcfg configuration defined in your preseed file, wherever it is retrieved from. The fact that netcfg directive are not being processed when the preseed file is retrieved from the network is inconsistent.

The Debian manual describe a hackish work-around for that:

"""
Although preseeding the network configuration is normally not possible when using network preseeding (using “preseed/url”), you can use the following hack to work around that, for example if you'd like to set a static address for the network interface. The hack is to force the network configuration to run again after the preconfiguration file has been loaded by creating a “preseed/run” script containing the following commands:

    killall.sh; netcfg

"""

So, I wonder: can we make d-i re-run netcfg automatically after it fetched it's preseed file specified by preseed/url, so that the netcfg directive are applied as it would normally be expected?

Thanks.

Revision history for this message
Your Mom (h-blut) wrote :

I second the rerun of the network configuration. Seeing how preseed/run did not work for me, I replaced the wget binary with a shell script reconfiguring the network, which is the ugliest work around yet.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.