Mit "push"-Backups meinst du, das die Clients den Zeitpunkt bestimmen und so "sich
selbst sichern"?
dirvish und backuppc als "Serverlösungen" bedeuten: Es gibt einen dedizierten Backup-
Server (oder man gebraucht seinen Server/Arbeitsrechner dazu), der Verbindung zu
den zu sichernden Clients aufnimmt und diese sichert.
Dirvish ist im Gegensatz zu backuppc eingeschränkter, da es nur zu einem Zeitpunkt
sichert (cronjob auf dem "Server"). Backuppc prüft die Clienst auf Erreichbarkeit und
sichert wenn möglich.
Sinn des Ganzen ist, das Backup nicht in die Verantwortung der Clients zu legen, sondern
des Backupservers. Ist natürlich meist nur ideal, wenn die Clients zu bestimmten Zeiten
erreichbar sind.
Auf deiner NAS-Lösung scheint ja ein kleines Linux zu laufen(?), allerdings wohl primär
um per NFS/CIFS den Platz freizugeben.
Auf dem Heim-PC mountest du wohl diese Freigaben? Auf dem Büro-PC würdest du
das gerne machen wenn VPN verfügbar ist?
Wichtige Frage ist nun: Was für ein Dateisystem ist auf der NAS intern? Ist es ein
Linux-FS (ext3,reiserfs,...)?
Das Onboard-Linux wirst du wohl vergessen können, ich würde das NAS ein als
"Festplatte" behandeln die du statt z.B. per USB per Netzwerk mountest. Ein Mitnehmen
der NAS ins Büro geht wohl nicht?
Hier mal ein Beispiel wie sich eine Lösung auch selbst realisieren läßt (sogar Push), ohne
auf externe Frameworks(dirvish,ect) rund um rsync angewiesen zu sein. So eine
(ausbaufähige) Lösung bietet natürlich die größte Flexibilität.
Das sichert /etc per rsync in ein Verzeichniss unterhalb /tmp. Für jeden Tag wird ein
Verzeichniss angelegt und wenn möglich mit dem vom letzten Backup hardverlinkt
(--link-dest).
Testen kann man das einfach durch laufenlassen (/tmp als Ziel ist nur zum Testen,
dabei bleiben wg. Sticky (rwt) die Rechte/Eigentümerschaft von /etc nicht erhalten).
Wenn man beim zweiten Lauf jetzt today= ändert zu einem anderen Datum kann
man das hardlinken austesten. Alle Tages-Verzeichnisse sind quasi autark, trotzdem
verbrauchen nur geänderte Dateien realen Speicherplatz.
#!/bin/sh
#
backdir=/tmp/backup
host=$HOSTNAME
#
src=/etc
srcname="etc"
#
today=$(date +%F)
#today="2008-04-29"
last=$(cat $backdir/$host-$srcname/lastrun 2>/dev/null)
baseopts="-vrltH --delete -pgo --stats -D --numeric-ids -x"
mkdir -p $backdir/$host-$srcname/$today
if [ -z $last ]; then
opts="$src $backdir/$host-$srcname/$today"
else
opts="--link-dest=$backdir/$host-$srcname/$last $src $backdir/$host-$srcname/$today"
fi
rsync $baseopts $opts
echo $today > $backdir/$host-$srcname/lastrun
Sowas ist absolut ausbaufähig (Überprüfungen, Logging,...) und auch mit geeigneteren
Skript-Sprachen als sh/bash codierbar.
Du z.B. könntest sowas auf jedem deiner PCs laufen haben. Als Ziel für das Backup dann
die gemountete NAS.
Verschlüsselung des rsymc-Transfers mit ssh sind eher in nicht vertrauenswürdigen
Netzen nötig (Sichern von Clients in Firma z.B.). Bei einer VPN-Verbindung bei dir von
Büro->NAS_zu_Hause ist die Verbindung ja eh verschlüsselt, ssh wäre dann doppelt
gemoppelt.