Bug#703747: netcfg: preseed netcfg: confusion or regression about disable_dhcp, disable_autoconfig and use_autoconfig
Package: netcfg
Version: 1.106
Severity: normal
Tags: d-i
Dear Maintainer,
* What led up to the situation?
I have built a preseed.cfg file to perform an automated installation on a
remote
Virtual Machine with a static IP address.
The original iso image was downloaded from:
http://ftp.debian.org/debian/dists/wheezy/main/installer-
amd64/current/images/netboot/mini.iso [built on 20130211]
Then the iso image has been rebuild with a custom initrd including the
preseed.cfg
file at its root, with:
[...]
# gunzip initrd.gz
# ls preseed.cfg | cpio --create --append --format newc --file initrd
# gzip --best initrd
[...]
# genisoimage [...]
I'm not an expert nor a wizard of preseeding, but enough familiar with this
technique
to read and understand documentation. First of all, I have read this page:
http://www.debian.org/devel/debian-installer/News/2013/20130217
where it is explicitly said:
'Use netcfg/disable_autoconfig instead of netcfg/disable_dhcp (#689531).'
This is confirmed by:
http://lists.debian.org/debian-boot/2012/10/msg00054.html
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=689531#25
and even
/var/lib/dpkg/info/netcfg.templates in the initrd of the installer.
But with:
d-i netcfg/disable_autoconfig boolean true
netcfg still try DHCP first, and installation fails.
* What exactly did you do (or not do) that was effective (or
ineffective)?
I don't own an amd64 PC, so I have performed other tests with my i386 laptop. I
have
played with several sets of configuration in preseed.cfg or on boot command
line, with
the following, surprising results:
d-i netcfg/disable_autoconfig boolean true
-> doesn't work
d-i netcfg/use_autoconfig boolean false
-> doesn't work
d-i netcfg/disable_autoconfig boolean true
d-i netcfg/use_autoconfig boolean false
-> doesn't work
on boot cmdline: netcfg/disable_autoconfig=true netcfg/use_autoconfig=false
-> doesn't work
But with the official mini.iso (the same as above but for i386), without
preseed.cfg or
whatever, just on boot command line of the default menu entry:
netcfg/disable_dhcp
-> leads me directly to the configuration of a static IP
Now, if I put this in a preseed.cfg:
d-i netcfg/disable_dhcp boolean true
d-i netcfg/get_ipaddress string 192.168.1.86/24
d-i netcfg/get_gateway string 192.168.1.1
d-i netcfg/get_nameservers string 192.168.1.1
it works like a charm
So, what about netcfg/use_autoconfig and netcfg/disable_autoconfig ?
Or what about the documentation ?
I don't understand.
The version of netcfg shipped in the downloaded mini.iso is 1.106;
there was a bugreport against the same program, version 1.92, to say that
d-i netcfg/disable_dhcp boolean true
fails [1]. Is 1.106 a regression ?
Now, to build a generic preseed.cfg file that could work with different
versions of the
installer, and to be sure DHCP config is skipped, I use:
d-i netcfg/disable_dhcp boolean true
d-i netcfg/disable_autoconfig boolean true
d-i netcfg/use_autoconfig boolean false
knowing that at least one of them (and probably two) is useless; but how to
know
which, in advance...
cheers,
quidame
[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=688273
-- System Information:
Debian Release: 7.0
APT prefers testing
APT policy: (990, 'testing'), (500, 'testing-proposed-updates')
Architecture: i386 (i686)
Kernel: Linux 3.2.0-4-486
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Reply to: