views:

563

answers:

3

I have a Fedora 10 64-bit server where I want to set up a nightly fresh install. The server is an exact clone of our customer's hardware and is used for running acceptance tests.

I would have liked to set this up using a virtual machine, but that's prohibited due to problems we've had with the different video and network drivers on the VM.

Here are the basic steps I need to automate:

  1. Reinstall base Fedora 10
  2. Update to the latest packages
  3. Install additional packages (some of these come from the rpmfusion repository and our own private repository, so the repo files for these need to be added to the configuration)
  4. Restore file system table to include a NAS mount
  5. Restore users and home directories.

I've looked at using Kickstart to do the installation, but it looks as if that will only satisfy the first step above by just answering all the questions that you'd normally answer interactively during installation. Does anyone know of a more suitable tool that I could use ?

Edit: looks like respin could also be very useful here.

+3  A: 

You could look at something like

fog - http://www.fogproject.org/

clonezilla - http://clonezilla.org/

Basically these two applications are for the automated, unattended deployment of backup images to machines. They tend to be used in large enterprises but can be used for what you want to achieve.

I have only used clonzilla but fog can apparently run script after a pxe boot install. You could clone the device after all the steps above and just push down the image with a nightly reboot , you could use clonezilla or fog for this, or you could use fog with a script to apply the chances after a clean image has been installed on the server

mxc
+2  A: 

Kickstart can do more using a %post section

BenB
Kickstart is to rpm as debootstrap is to Debian. +1 :)
Tim Post
+1  A: 

Just wanted to elaborate to @BenBruscella's %post post. Kickstart has a section where you can include or call up any post-install script to start after the main installation stuff is done. With this you could easily do your package updates and mounts.

thesethings