Yet Another CD Backup Tool (yacdbak)


yacdbak is intended to facilitate backups to multiple CD-recordables or CD-rewritables on Linux systems. It uses GNU tar and Jörg Schilling´s cdrecord.

The initial version provides three shell scripts (<bindir>/yacdbak.full, <bindir>/yacdbak.diff1 and <bindir>/yacdbak.diff2) for different levels of backup. As the names suggest, yacdbak.full makes a full backup of all files specified by <sysconfdir>/yacdbak.include and <sysconfdir>/yacdbak.exclude. yacdbak.diff1 creates differential backups with respect to this full backup, and yacdbak.diff2 creates second-level differential backups. These scripts use snapshot files that can be found in <localstatedir>/yacdbak.

These scripts need to be invoked by root and branch to another shell script, <bindir>/yacdbak.cdrecord, which is responsible for writing the temporary images (<tmpdir>/yacdbak.image) to the CD-R or CD-RW.

The archives written to the CD-R(W)s can be accessed for restoring like these written to magnetic tapes (specify the input device: tar --extract --multi-volume --incremental --file=/dev/scd0 or alike). Have a look at the excellent GNU tar documentation ;-)

What is required ?

The tools usually required for installation (install, aclocal, autoconf, automake, autoheader, makeinfo), but these should be available on every Linux system. Of course you need a Bourne shell (bash is ok). The scripts use GNU tar and Jörg Schilling´s cdrecord.

Do not use tar version 1.13 for restoring as it is buggy at least in two aspects: it does no recognize the --tape-length argument correctly, and it does not extract incrementally backed up files to the proper place. Version 1.12 seems to be work ok. cdrecord version 1.8.1a05 did not show any problems so far.

GNU tar-1.12 can be found on any GNU ftp mirror, the cdrecord homepage is currently

Where does the stuff go ?

The installation routine follows the usual GNU scheme, have a look at INSTALL. (The invocation of make does not do anything.) Maybe it´s a good idea to use the --prefix="" option on configure to have everything at hand for making backups even if some partitions fail that are not required for system administration.

Two directories are affected during installation

Two more directories are are used during execution:


Have a look at the configuration files, *** probably the settings are not adequate for you ***:

yacdbak.config specifies the CD-writer, the temporary directory, and the label prefix written to each volume.

yacdbak.include specifies all input directories for backup (make sure you do not add empty lines, or you will get hard-to-understand "No such file or directory: " error messages from tar), yacdbak.exclude specifies patterns for files not to include. Again, refer to the tar documention.

Lack of warranty

I only see little chance that your system will be completely destroyed by this software, but you use it totally at your own risk. The GNU GENERAL PUBLIC LICENSE is applicable (see COPYING).

Blame me

The most recent version will be found at SourceForge. There you find also an opportunity to mail me any hints, suggestions or insultations.

Thomas Langen

Other CD Backup Utilities