The sys admin's daily grind: Backup2l
I'll Be Back
At his cozy home, sys admin Charly has always used rsnapshot to back up his data. Although things will be staying this way for server backups, he has found something more manageable for backing up the Kühnast family's desktop PCs.
Backups are inevitable, and that includes desktop PCs, even the ones at home. However, in my four walls, I do not need a professional enterprise backup warehouse, and I feel no genuine desire to pay the license fee for it. I back up everything on a small Synology NAS and the NAS, in turn, is backed up on two large USB drives.
On the NAS, I have shared a directory by the name of
linbackup; below that is a subdirectory for every machine to be backed up – a total of 14 right now. My children are obviously growing up and probably starting to hoard hardware. I really wonder who they take after. There is also a
gamelauncher directory; incidentally, this is where I back up the Windows partition.
Lately, the backup itself has been handled by backup2l , which I've tried out in the past few days as a lightweight alternative to rsnapshot . Backup2l can be controlled by cron and creates a configurable number of incremental backups. Three parameters are responsible for this in the
backup2l.conf configuration file.
MAX_LEVEL=<3> determines the number of levels, whereas
MAX_PER_LEVEL=<8> defines the number of incremental backups per level. In my case, backup2l creates hourly incremental backups; this is the lowest level, level 3. Once it has collected eight of them (
MAX_PER_LEVEL), backup21 creates a new level 2 backup, which saves all changes since the last level 2 backup. The level 3 backups are then deleted, and the process begins again (Figure 1).
Once backup21 has collected eight level 2 backups, it creates a new level 1 backup – this is a full backup.
MAX_FULL, the third parameter, lets you specify how many full backups can exist at the same time.
Save Yourself, If You Can
SRCLIST to define exactly what backup2l backs up,
SRCLIST=(/etc /root /home /var/ /usr/local)
and I can define exceptions. Backup2l distinguishes between files (
-name) and directories (
-path). Several exceptions can be linked by using
SKIPCOND=(-path "*.nobackup*" -o-name "*.o")
BACKUP_DIR to tell backup2l where to save the data:
If the destination directory, as in my case, is a network drive, the user must of course ensure that it is mounted in good time. In this example,
funghi is the name of my Ubuntu test machine. All of my desktop Linux boxes are named after pizzas, and my servers are named after Scottish islands – in both worlds, there is no big risk that I will run out of names any time soon.
backup2l.conf file contains two sections,
POST_BACKUP, where you can store shell commands that backup2l runs before and after performing the backup. You can use this approach to make sure that certain services are stopped during the backup.
Finally, I need to tell the tool that my part of the job is done – by flipping the
UNCONFIGURED=0 switch to
UNCONFIGURED=1. It's good to know that Funghi, Tonno (tuna), and the others are out of danger.
Buy this article as PDF
New flaw in an old encryption scheme leaves the experts scrambling to disable SSL 3
Lennart Poettering wants to change the way Linux developers talk to each other.
Enterprise giant frees itself from ink and home PCs (and visa versa).
Mozilla’s product think tank sinks silently into history.
TODO group will focus on open source tools in large-scale environments.
New tool will look like GParted but support a wider range of storage technologies.
New public key pinning feature will help prevent man-in-the-middle attacks.
Carnegie Mellon researchers say 3 million pages could fall down the phishing hole in the next year.
The US government rolls new best-practice rules for protecting SSH.