If you have a lab full of machines, or you have a number of machines that need to be set up with the same configuration (eg: you are building firewalls), you might be interested in a method of automatically installing machines.
RedHat Linux
Automatic installs on Red Hat are made very easy by the fact that RPMs do not ask you question when they are installed. Red Hat policy is to shoot first and ask questions later; if a file is going to be overwritten, a new file (file.rpmnew) is written in its place.
The 'standard' way to do a Red Hat automatic install is with KickStart. This is a feature built into anaconda (the Red Hat installer) that allows you to run ksconfig(1)? and generate a configuration file that you can put on a floppy, then boot a system, have it automatically pick up an IP address by DHCP, mount a share for files and start installing based on the configuration file you build with ksconfig(1)?.
PreSeed? an installation, in the same fashion as a Kickstart file.
http://instalinux.com/ can build you an automatically installing CD image, which fetches packages off your network. This is cool.
We should have some notes here.
Other options:
Quick 'n' Dirty note: If you are quite happy to do a base install of debian manually (which is pretty quick), and just want to restore a system to the state it was in, in terms of the packages you had installed, a very cool tool is dpkg --get-selections>installed-packages.
On your freshly installed system, use dpkg --set-selections<installed-packages, and then apt-get -u dselect-upgrade.
If you wish to get really tricksy, you can copy the debconf database as well, so your config choices will be pre-selected for you. -- GreigMcGill
(AutoInstall has a really good set of scripts for the debconf database.) -- CraigBox
Part of LinuxInstallationNotes