using option lateLinks

You can use storeBackup as one program (storeBackup.pl) which does everything alone or you can split the different tasks into several pieces. There is mainly one advantage to run different programs for the different tasks: the time for backup itself from the perspective of the saved computer (or) data is lower.

It makes sense to use option lateLinks if you store your Backup on an nfs server and if you think it is a good idea to speed things up (see performance). Configuring lateLinks is a little bit more complicated than using storeBackup.pl as a standalone programe because you have to manage multiple programs.

StoreBackup.pl as a standalone program does the following tasks:

  1. The link consistency of all backups (from all backup series) is checked. We will see late what this means.
  2. Loading of meta data from one or more old backups. This task is like an initialisation, where it gets file names, md5 sums, dates, times and some other information from the old backups.
  3. Checking for all files to backup if another file with that specific content is already in those old backups from where the file names, md5 sums etc. were loaded.
  4. The changed data is transferred to the backup: By copying, by compression or by hard linking. Naturally, the directory structure is also generated.
  5. The permissions and owners of the directories are set to the same values as in the source directory.
  6. Depending on the rules defined with the keep$*$ options of storeBackup.pl, old backups are deleted.
If you start storeBackup.pl with the option lateLinks, the transfer of data (see step 4) and the actions on the remote file system are reduced to the absolutely necessary minimum: Independent of option lateLinks you can always configure storeBackup.pl to not perform step 6, the deletion of old backups. Especially if you are writing your backup on an nfs mount, this will take some time and lengthen your backup. Use storeBackupDel.pl (which can read the configuration file of storeBackup.pl) to split the deletion of old backups from the direct backup process.

It is important to understand that using option lateLinks creates an unfinished backup. Such backups do contain all the data which was intended to be backed up, so the core backup is complete. But storeBackup's job is not completed in the following ways:

With the option lateLinks you create temporary incremental backups. Later you create with storeBackupUpdateBackup full backups out of them (by using older backups).

The following picture shows two cross linked backup series from different computers.21 You see that the references resulting from the lateLinks option can be complex. The hard links are never a problem, because there is no original or ``real'' reference - every hard link is an original pointer to the file (or more precise to the inode. The file will only be deleted if the last hard link has gone. But the references created by lateLinks are just some file names in a file which has nothing to do with the file system.

\includegraphics[scale=0.8]{seriesLateLink}

To complete an unfinished backup (which makes all those nasty linking and compressing and so on), use storeBackupUpdateBackup.pl. It also will analyse your backups (below ``backupDir'') and find the right order to complete them. After running storeBackupUpdateBackup.pl successfully your backups will be in the same state as if you ran your backup without option lateLinks. Among some others, file .storeBackupLinks/linkFile.bz2 is deleted and everything is hard linked (and compressed), and the permissions are set like in the source directory (except if the option ignorePerms was set in storeBackup.pl).

If you use option lateLinks, you should run storeBackupUpdateBackup.pl regularly, e.g., every night and check if there were some ERROR messages.

Summary:

Heinz-Josef Claes 2014-04-20