Installer silently ignores preseed directives
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
kickseed (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
I'm trying to perform a fully automated installation of Ubuntu server on 100 Dell C8220s, by PXE booting the installer ISO then feeding it a preseed file over http using kernel cmdline params including (among others) url=http://
I'm unable to defeat certain prompts; it appears as if the preseed values are simply being ignored. This is a showstopper to Ubuntu deployment at scale; we cannot tolerate any interactivity whatsoever with 100 servers. When (if) this works, it will expand to even more servers.
I've been banging my head against this for some time now, so I can supply a wide variety of preseed files that don't work, but which I think should work. I'll attach the more interesting ones to this report shortly.
1. Ubuntu release: Precise, using ubuntu-
2. Package version: whichever version of {debian,
3. What I expect to happen:
3.1. Preseed directives shall either work, or fail in a debuggable way
Preseed configuration directives generated by debconf-
3.1.a. Do what I want them to do; or
3.1.b. Output comprehensible diagnostics on tty4, explaining why they did not work.
For example, if I have the wrong owner name (not eg 'd-i'), the wrong directive name, the wrong type, or a unavailable value, tty4 shall show a diagnostic explaining which of these is the case.
3.2. The selections output by debconf-
4. What actually happens
4.1. In many (but not all) cases, preseed directives neither work, nor output any explanation as to why they did not work that is visible to me. Perhaps I'm looking in the wrong places - is tty4 not the right place?
4.2. debconf-
For example, the output contains:
# Choices: Algeria, Angola, Benin, Botswana, Burkina Faso, Burundi, Cameroon, Cape Verde, Central African Republic, Chad, Congo, Congo\, The Democratic Republic of the, Djibouti, Egypt, Equatorial Guinea, Eritrea, Ethiopia, Gabon, Gambia, Ghana, Guinea, Guinea-Bissau, Kenya, Lesotho, Liberia, Libya, Malawi, Mali, Mauritania, Morocco, Mozambique, Namibia, Niger, Nigeria, Rwanda, Sao Tome and Principe, Senegal, Sierra Leone, Somalia, South Africa, Sudan, Swaziland, Tanzania\, United Republic of, Togo, Tunisia, Uganda, Western Sahara, Zambia, Zimbabwe
d-i localechooser/
This is pointless; it won't defeat any interactive prompting, as it's missing a value. So there's no point including it in the output. It's just noise.
Also, I already told the installer I'm in Oceania, so I was never prompted for a country in Africa. This directive thus has nothing to do with what I choe in the interactive install.
On the other hand, the output also contains:
partman-lvm partman-
It appears to have forgotten that I selected /dev/sda1 as the sole LVM PV during the interactive install - the value is missing.
Again, without the value, this directive doesn't do anything useful.
I could accept this type of output if I had said 'debconf-
I currently think that rather than using a preseed file, it would be easier to make my own initrd which executes cfdisk/
This peseed contains:
partman-auto partman-auto/method string lvm
However, I am still prompted whether I want to use LVM on the sole usable block device (/dev/sda) in the machine, or guided partitioning, or etc.
There's no indication on tty4 (or anywhere else I can see) that this directive is not the correct syntax, or is being ignored for some reason, or otherwise why it hasn't done what I want.