multiCD

Introduction

I wanted to backup my entire Linux system. I wanted to do it by making direct copies of the files (no tar, compression, or archiving) so if I just wanted to look at one of the files on one of the CDs, I could. This also makes it very easy to restore from backups. Backing up my entire Linux system takes more than one CD, so I was running the du command on a bunch of directories to see what would fit on which CD. This was very tedious and time consuming, so I wrote multiCD to do this work for me.

Description

multiCD has a fairly large number of options, and can be configured to run in a variety of ways. I'll talk about some of the more interesting features:

multiCD can run in an interactive or non-interactive mode.

multiCD can be configured to run in a multi-threaded mode. If your machine can handle it, you can burn one CD image while another image is having the next set of files copied to it. This option can be disabled on slower machines. Since non-interactive mode burns only one CD, multi-threading is only used in interactive mode. When running with this feature enabled, it's best to redirect stderr somewhere. I send the output of cdrecord, along with some other status information, to stderr. When cdrecord is running in the background at the same time as the main process, their output will overlap. I usually do something like:
multiCD 2> err
and then in another terminal I do:
tail -f err
so that I can watch the progress of cdrecord.

Selecting which files to backup is simple and powerful. For example, you can tell it to backup / (everything), but have it exclude certain sub directories like /tmp /dev /mnt /usr/tmp /proc, etc. It only backs up regular files, directories, and symlinks. All other files are automatically skipped. Also, if there is a problem reading a file because of permissions or whatever, it is automatically skipped. A warning is printed to STDERR whenever a file is skipped.

Options like the type of file system to create, or the capacity of the CD's to burn can be changed.

multiCD can be configured to run in a mode where it simply creates a series of image files, without burning anything to discs. Some people find this useful if they want to burn the CDs later.

This was developed on Linux, but should run fine on any Unix-like system.

Configuration

The documentation in the global config file in /etc/multiCDrc explains all of the options that are available. multiCD can get configuration information from any of three places:

Values are read from all three of these locations. If the same value is specified in more than one location, then values from the ~/.multiCDrc will override values from the global file, and command line options will override both of the other two.

Requirements

News

License

multiCD is copyright © 2001 by Daniel Born and is released under the GNU General Public License Version 2.

The Author

If you find this program useful, let me know. If you find a bug, let me know, and I will fix it. Also, if you want a certain feature added, send me an email and I will consider it. My name is Dan Born. Feel free to get in touch with me.