SystemImager® v3.2.3 Manual

Brian Elliott Finley
dann frazier
Austin Gonyou
Ari Jort
Jason R. Mastaler
Greg Pratt
Ben Spade
Denise Walters
Curtis Zinzilieta

SystemImager was created by Brian Elliott Finley, who continues to maintain it as the team lead.

SystemImager is software that automates Linux installs, software distribution, and production deployment. SystemImager makes it easy to do automated installs (clones), software distribution, content or data distribution, configuration changes, and operating system updates to your network of Linux machines. You can even update from one Linux release version to another!

It can also be used to ensure safe production deployments. By saving your current production image before updating to your new production image, you have a highly reliable contingency mechanism. If the new production enviroment is found to be flawed, simply roll-back to the last production image with a simple update command!

Some typical environments include: high performance clusters, Internet server farms, database server farms, computer labs, and corporate desktop environments.

Be sure to view the CREDITS file for a listing of other people who have contributed code or documentation that has been incorporated into SystemImager. Many thanks go to these people, as their relentless pursuit in the discovery bugs and the occasional code contribution are invaluable.

Trademark Notices

SystemImager® is a registered trademark of Brian Finley.

Linux® is a registered trademark of Linus Torvalds.

Debian® is a registered trademark of Software in the Public Interest, Inc.

Red Hat® is a registered trademark of Red Hat, Inc. in the United States and other countries.

Solaris® is a registered trademark of Sun Microsystems, Inc.


Table of Contents
1. Introduction to SystemImager®
1.1. SystemImager Overview
1.2. Who Should Use This Guide
1.3. How SystemImager Works
1.3.1. Supported Distributions
1.3.2. System Requirements
1.4. Glossary of Terms
2. Installing SystemImager
2.1. How Does it Work?
2.2. Obtaining SystemImager
2.3. Selecting A Machine To Use As An Image Server
2.4. Installing an Image Server
2.5. Selecting A Machine To Use As A Golden Client
2.6. Installing SystemImager Client Software on a Golden Client
2.7. Creating an Image on the Golden Client
2.8. Upgrading SystemImager
2.8.1. Regenerating autoinstallscripts
2.8.2. Migrating Customizations of the /etc/systemimager/rsyncd.conf file to SystemImager 3.0.0
2.8.3. Regenerating boot media
2.8.4. What happened to the binary tarballs?
3. Using SystemImager
3.1. Installation Procedures Overview
3.1.1. Detailed Installation Instructions
3.1.2. SystemImager Tools
4. HOWTO Use Flamethrower for Multicast Installs
4.1. Install SystemImager v3.2.x or higher
4.2. Install the Flamethrower Package and its Dependencies
4.3. Run getimage, mvimage, or cpimage
4.4. Start up your Flamethrower daemon
4.5. Tell your autoinstall clients to use Flamethrower
4.6. Autoinstall your clients!
4.7. A Detailed Walk Through the Process
5. HOWTO Use OpenSSH for Secure Installs
5.1. Using OpenSSH for Secure Installs
5.2. Installing systemimager-ssh
6. FAQ (Frequently Asked Questions)
7. Developing SystemImager®
7.1. Design Goals
7.2. Development of SystemImager Architecture
7.3. Version Strings
7.4. Using CVS
7.5. Submitting Patches
7.6. Tour of the Source Tree
7.6.1. Makefile Overview
7.6.2. Third Party Software
7.6.3. Boel Libraries
8. Command Reference
ADDCLIENTS -- assign clients to an image
AUTOINSTALLSCRIPT.CONF -- specify partition and filesystem options
CPIMAGE -- make a copy of a SystemImager image.
GETIMAGE -- pull an image from a golden client
LSIMAGE -- list the images on an image server
MKAUTOINSTALLCD --  generate a bootable iso image for autoinstalling clients
MKAUTOINSTALLDISKETTE --  creates a bootable floppy for autoinstalling clients
MKAUTOINSTALLSCRIPT --  create a SystemImager autoinstallscript
MKBOOTSERVER --  Configure a server so that other machines can boot from it over the network.
MKDHCPSERVER --  create a DHCP server configuration file for use with SystemImager
MKDHCPSTATIC --  create a DHCP server configuration file with static entries
MVIMAGE -- Move a SystemImager image.
PREPARECLIENT -- prepare a golden client's image for retrieval
PUSHUPDATE -- update the image of one or more remote clients
RMIMAGE -- remove a SystemImager image.
MKRSYNCD_CONF -- generates rsyncd.conf from a rsync stub directory
UPDATECLIENT --  update the image running on the local client machine to match that of an image on an image server
List of Examples
2-1. Generating new autoinstallscripts
3-1. Contents of an example local.cfg provided with SystemImager:
3-2. Running mkdhcpserver
3-3. Running updateclient with the "-autoinstall" and "-config" options
3-4. Pull the golden client's image to the image server
3-5. Running getimage
3-6. Entries in /etc/hosts created by addclients
3-7. Booting the autoinstall media from a system's hard drive