Ich habe keine GUI-Lösung, beschreibe hier mal meinen Weg:
Wir haben den UCS nicht auf „bare-metall“ installiert, sondern Proxmox als Virtualisierungsschicht zwischengeschoben.
Das hat den Charme, dass von der UCS -Installation snapshots (lokal oder auf einen entfernten Netzwerkspeicher) getätigt werden können.
Die Installation ist damit hardwareunabhängig und kann schnell wieder ans Rennen gebracht werden, wenn ein Hardwaredefekt/Austausch anliegt.
Für die eigentliche Datensicherung (ich gehe jetzt nur von /home aus), nutze ich rsnapshot. Dabei wird aber der Backupordner von mir wieder per Samba read-only im Netz freigegeben¹.
Damit kann $User seine Daten selbst ohne den Umweg über einen Admin zurückspielen. Denn das ist ja der eigentlich wichtige task:
Ganz getreu dem Motto: Niemand will Backups, alle wollen Restore .
Ich halte immer 6 Monate / 4 Wochen / 7 Tage = 17 Snapshotpunkte vor. rsnapshot nutzt hardlinks, sodaß ich idR. den Backupspace nur 1.5x so groß wie /home wählen muss und trotzdem in jedem Backupordner alle Dateien sehe. Gepaart mit der Sambaoption „hide unreadable = yes“ sehen die Benutzer nur die Ordner/Dateien, auf die sie auch Rechte haben.
[1]
Dieses Script sorgt bei unserem Schulserver dafür (wird im cmd_postexec hook in der /etc/rsnapshot.conf aufgerufen)
#!/bin/sh
#
# Dieses Script sorgt dafür, dass die aktuellen backup-Stände über
# Samba zur Verfügung gestellt werden
# Thorsten Strusch <strusch@ksan.de>
#
# nur laufen, falls es mindestens ein Backup gibt:
[ -d /mnt/backup/rsnapshot/daily.0 ] || exit 0
# Löschen der alten links
[ -d /home/samba/Backup/ ] || mkdir /home/samba/Backup/
find -H /home/samba/Backup/ -xdev -type l -delete
cd /home/samba/Backup/
# kreatives Erstellen der Ordner
for i in /mnt/backup/rsnapshot/* ; do stat -c "%n %y" $i; done | awk '{ print "ln -s",$1"/ksan/home",$2}' | sh
# Verstecken der Lernsoftwarefreigabe vor den Schülern:
chown lehrer.lehrer /mnt/backup/rsnapshot/*/ksan/home/samba/Lernsoftware/
chmod o-rx /mnt/backup/rsnapshot/*/ksan/home/samba/Lernsoftware/
Das Share zeigt dann diese Ordner:
lrwxrwxrwx 1 root root 41 2015-05-20 22:00 2014-10-30 -> /mnt/backup/rsnapshot/monthly.5/ksan/home
lrwxrwxrwx 1 root root 41 2015-05-20 22:00 2014-11-27 -> /mnt/backup/rsnapshot/monthly.4/ksan/home
lrwxrwxrwx 1 root root 41 2015-05-20 22:00 2014-12-25 -> /mnt/backup/rsnapshot/monthly.3/ksan/home
lrwxrwxrwx 1 root root 41 2015-05-20 22:00 2015-01-22 -> /mnt/backup/rsnapshot/monthly.2/ksan/home
lrwxrwxrwx 1 root root 41 2015-05-20 22:00 2015-02-26 -> /mnt/backup/rsnapshot/monthly.1/ksan/home
lrwxrwxrwx 1 root root 41 2015-05-20 22:00 2015-03-26 -> /mnt/backup/rsnapshot/monthly.0/ksan/home
lrwxrwxrwx 1 root root 40 2015-05-20 22:00 2015-04-16 -> /mnt/backup/rsnapshot/weekly.3/ksan/home
lrwxrwxrwx 1 root root 40 2015-05-20 22:00 2015-04-23 -> /mnt/backup/rsnapshot/weekly.2/ksan/home
lrwxrwxrwx 1 root root 40 2015-05-20 22:00 2015-04-30 -> /mnt/backup/rsnapshot/weekly.1/ksan/home
lrwxrwxrwx 1 root root 40 2015-05-20 22:00 2015-05-07 -> /mnt/backup/rsnapshot/weekly.0/ksan/home
lrwxrwxrwx 1 root root 39 2015-05-20 22:00 2015-05-12 -> /mnt/backup/rsnapshot/daily.6/ksan/home
lrwxrwxrwx 1 root root 39 2015-05-20 22:00 2015-05-13 -> /mnt/backup/rsnapshot/daily.5/ksan/home
lrwxrwxrwx 1 root root 39 2015-05-20 22:00 2015-05-14 -> /mnt/backup/rsnapshot/daily.4/ksan/home
lrwxrwxrwx 1 root root 39 2015-05-20 22:00 2015-05-15 -> /mnt/backup/rsnapshot/daily.3/ksan/home
lrwxrwxrwx 1 root root 39 2015-05-20 22:00 2015-05-18 -> /mnt/backup/rsnapshot/daily.2/ksan/home
lrwxrwxrwx 1 root root 39 2015-05-20 22:00 2015-05-19 -> /mnt/backup/rsnapshot/daily.1/ksan/home
lrwxrwxrwx 1 root root 39 2015-05-20 22:00 2015-05-20 -> /mnt/backup/rsnapshot/daily.0/ksan/home