Goal

The goal of this guide is to help you create an Ubuntu installation CD that you can use to perform unattended installations.

Configuration files will be fetched from a web server, so the process can be easily updated without the need to master and burn more CDs. Control of a DHCP server is not required.

Caveats

This system has not been used in a production environment.

This guide was developed with the Ubuntu Jaunty (9.04) Server Install CD. For other versions and varieties of Ubuntu, some parts may vary.

The custom installation CD is somewhat dangerous, in that you just need to press "enter" after booting to it, and it will proceed to erase the system's hard drive without further confirmation.

Components

Once set up, the system will consist of the following parts:

Usage

Once completed, the CD can be used as follows:

Guide

Custom installation CD

We'll use the Jaunty server install CD as a base, and make the following changes:

Preparation

Process

 default unattended
 label unattended
  menu label ^Unattended Installation
  kernel /install/vmlinuz
  append preseed/url=http://mywebserver.mydomain.tld/preseed/ubuntu-9.04.seed
      debian-installer/locale=en_US netcfg/choose_interface=auto
      initrd=/install/initrd.gz priority=critical --

Explanation: There are several setup questions that occur before your preseed file will be fetched. Some of the options that are set using the "append" directive above provide answers to those questions so they won't be asked.

The "append" setting is the last one, and it all goes on one line, up to and including the double dash (--).

webserver

The webserver's duty is to serve the preseed file.

General webserver setup is beyond the scope of this guide. But, a simple way to do it is (using root privileges):

... and then copy the relevant files to /var/www/preseed.

preseed file

This file controls the installation process. There is a lot that can be done with it. In this guide, I'll just note the settings that need to be changed to accomplish an unattended installation.

Setting

Value

partman-auto/disk

/dev/sda

passwd/root-login

true

passwd/make-user

false

passwd/root-password-crypted

(the password hash)

pkgsel/include

openssh-server wget

That will suffice to make the installation unattended. You may also want to customize it further, omitting the installation of extra software, and so forth; see https://help.ubuntu.com/9.04/installation-guide/powerpc/preseed-contents.html

Testing

By following the instructions above, you should have an Ubuntu installation CD that will run unattended. You boot a fresh new server using the CD, press enter to choose the "Unattended Installation" option, and the CD does the rest.

Follow the steps in the "Usage" section above and ensure that everything's working OK.

Installation/UnattendedCD (last edited 2009-05-15 20:22:43 by ucmerced009-080)