Mein Bash-Backupskript auf Basis von rsnapshot, das auf rsync aufbaut.
Features: Donnerstags weekly-Backup, am Ersten des Monats monatliches.
Mit yes.png, save.png und drive.png werden die Benachrichtigungen auch schön. Die benötigen die Notifications von Ubuntu (soweit ich mich erinnere seit 9.04 dabei). Die Zeilen kann man auskommentieren und damit dafür sorgen, dass auch andere Linuxdistributionen unterstützt werden.
Lizenz: GPLv3
Viel Spaß damit!
Code:
#!/bin/sh # "programming bash" SELF=$(readlink -f "$0" || echo "$0"); PROGRAM_DIR=$(dirname "$SELF"); notify-send -i "$PROGRAM_DIR/drive.png" "Backup" "Beginne Backup..." # Paketliste notify-send -i "$PROGRAM_DIR/save.png" "Backup-Status" "Erzeuge Paketliste" dpkg --get-selections > ~/pakete.txt notify-send -i "$PROGRAM_DIR/yes.png" "Backup-Status" "Paketliste erzeugt." # monthly day=$(date '+%d') if [ $day == "01" ]; then notify-send -i "$PROGRAM_DIR/save.png" "Backup-Status" "Beginne monatliches Backup..." time sudo rsnapshot monthly; notify-send -i "$PROGRAM_DIR/yes.png" "Backup-Status" "Monatliches Backup abgeschlossen." fi # weekly? day=$(date '+%u') if [ $day == "4" ]; then notify-send -i "$PROGRAM_DIR/save.png" "Backup-Status" "Beginne wöchentliches Backup..." time sudo rsnapshot weekly; notify-send -i "$PROGRAM_DIR/yes.png" "Backup-Status" "Wöchentliches Backup abgeschlossen." fi # daily notify-send -i "$PROGRAM_DIR/save.png" "Backup-Status" "Beginne tägliches Backup..." time sudo rsnapshot daily; notify-send -i "$PROGRAM_DIR/yes.png" "Backup-Status" "Tägliches Backup abgeschlossen." notify-send -i "$PROGRAM_DIR/drive.png" "Backup" "Backup abgeschlossen. Sie können den Datenträger jetzt entfernen."
Johannes