Installation media: ubuntu-10.04-desktop-i386.iso
I tried a lot of different boot parameters, but either the installer ignored the preseed configuration, or it boot itself directly as LiveCD.
An example of the boot parameters I've tried:
auto url=http://mydomain.com/path/preseed.cfg boot=casper only-ubiquity initrd=/casper/initrd.lz quiet splash --
If I remove only-ubiquity
, it boots as a LiveCD. If I remove boot=casper
, it won't boot. If I add vga=normal locale=en_US console-setup/layoutcode=us console-setup/ask_detect=false interface=auto
, it still can't do automatic install. If I remove auto
, it's the same.
What is the correct boot parameters for launching such an installation?
From the apache log of the server hosting preseed.cfg
, I see that the installer has no problems fetching the preseed file. My preseed file is almost identical to the one at https://help.ubuntu.com/10.04/installation-guide/example-preseed.txt. Moreover, I have run debconf-set-selections -c preseed.cfg
to ensure that the preseed file is correct.
Ok... I've found the answer with experiments.
Use the server or alternate ISO instead of the desktop ISO! Preseed does not work with the desktop ISO. Use the
linux-generic
kernel and taskselubuntu-desktop
to get a desktop installation.The
auto
boot parameter does not work (at least for i386). Useauto=true priority=critical
instead.In contrast to the official documentation, which states that "if the URL is missing a protocol, http is assumed",
http://
is required or the installer will not be able to fetch the preseed file.If you have multiple network cards, add
interface=auto
or the installer will ask you which interface to use.Therefore, the minimum boot parameters needed are
auto=true priority=critical url=http://mydomain.com/path/preseed initrd=/install/initrd.gz
If I have time, I'll definitely post a documentation-improvement request to launchpad.
The following default file worked for me
If you do not give the locale and kbd-chooser the auto installation will not work and you will be presented with the screens for answering
The solution given by netvope works. I was using a network archive URL as an installation source with
virt-install {...} --location URL -x "auto=true priority=critical url=http://www.example.com/autoinstall/preseed.cfg console-keymaps-at/keymap=us locale=en_US hostname=myhost domain=example.com"
After a lot of testing, it seems that the keymap, locale, hostname, domain need to be given as extra boot parameters, even if they were set up in the preseed.cfg file. With the
auto=true priority=critical
the installer will proceed even without answers to those questions, but unfortunately it won't find them in the preseed.cfg file either, like it should. So we need to give all these:So, the above boot parameters must be given even if you have them in your preseed.cfg as well:
This was tested on Ubuntu 10.04 and 10.10 and worked without asking keyboard or locale related questions.
Using cobbler on fedora, the following is what worked for me: I add the distro that's available from the web server
sudo cobbler distro add --name=Install_Ubuntu_Server-11.04-x86_64 --kernel=/var/www/cobbler/mountedvd/x86_64/ubuntu/server/11.04/install/netboot/ubuntu-installer/amd64/linux --initrd=/var/www/cobbler/mountedvd/x86_64/ubuntu/server/11.04/install/netboot/ubuntu-installer/amd64/initrd.gz --arch=x86_64 --breed=debian
then I add a profile. Note the kernel options following --kopts
sudo cobbler profile add --name=Install_Ubuntu_Server-11.04-x86_64 --distro=Install_Ubuntu_Server-11.04-x86_64 --kickstart=/var/lib/cobbler/kickstarts/ubuntu_server.seed --kopts="auto=true, priority=critical lang=english locale=en_US console-keymaps-at/keymap=us hostname=ubuntu_server domain=domainname console-setup/ask_detect=false console-setup/layoutcode=us"
for completeness sake here's my seed file for a xubuntu install