Sie sind auf Seite 1von 7

Windows Backups mittels rsync auf einen Linux Server Ihr habt einen Linux Server in Eurem Netzwerk

hngen? Warum nicht gleich diese n Server fr Backups Eurer wichtigsten Dateien Eures Windows Rechner verwenden? Da s geht sogar einfacher als Ihr denkt und ihr knnt dazu sogar das erstklassige Lin ux Programm rsync verwenden. Folgendes Szenario: Euer Linux Server hat die IP 123.123.123.12 Euer Backupverzeichnis ist ein Homeverzeichnis, das wir beispielsweise Siche rung nennen. In das Verzeichnis sollen zwei Verzeichnisse unseres Windows Deskto p gesichert werden: c:\Users\Hans d:\Meine Dokumente Wie wir sehen, haben wir ein Userprofil und ein Verzeichnis mit einem Leerze ichen. Die beiden Beispiele behinhalten bewusst zwei Stolperfallen, die ich dann im Tutorial bespreche. Installiert nun zuerst Cygwin, wie ich hier bereits besprochen habe: http:// www.gargi.org/showthread.php?...wpost#post8550 Whlt dazu bitte noch folgende Programme aus: openssh rsync nano mc Wenn alles steht startet Euer Cygwin als Administrator (Rechtsklick auf das Symbol und als Administrator starten auswhlen). Wenn Ihr nun den Midnight Commander startet seht Ihr, dass Eure gewnschten Ve rzeichnisse unter folgenden Pfaden liegen: /cygdrive/c/Users/Hans /cygdrive/d/Meine Dokumente Das soll uns nicht stren, sondern wir mssen das nur zum Syncronisieren im Hint erkopf behalten. Damit nun in Zukunft Euer Admin Account via ssh automatisch ein loggt mssen wir einen Schlssel erzeugen. Loggt Euch erstmal wie gewohnt als root a n Euren Server dran: Code: ssh root@123.123.123.12 Ihr msst nun den Fingerprint speichern. Gut so, denn das erzeugt im Homeverze ichnis Eures Admin Accounts das Verzeichnis .ssh. Loggt Euch erstmal aus Eurem S erver aus: Code: exit Wechselt nun in das neue Verzeichnis

Code: cd .ssh Generiert nun Euren Schlssel: Code: ssh-keygen -b 1024 -f id_dsa -t dsa -N '' Danach kopiert den Schlssel auf Euren Server: Code: scp id_dsa.pub root@123.123.123.12:/home/meinkey.key Meldet Euch nochmal via ssh auf dem Zielserver an: Code: ssh root@123.123.123.12 Jetzt kommt es darauf an, ob Ihr bereits von root aus eine ssh Session schon mal ausgefhrt habt. Falls nicht, dann startet einmal den ssh, damit unter /root/ das .ssh Verzeichnis angelegt wird. Kopiert entweder den Schlssel dann nach /root/.ssh/ Code: cp /home/meinkey.key /root/.ssh/authorized_keys oder (WICHTIG !!!!) falls diese Datei bereits schon mit Schlsseln besteht fgt nur den Schlssel an die Datei an: Code: cat /home/meinkey.key >> /root/.ssh/authorized_keys Lscht dann das File wieder Code: rm /home/meinkey.key und loggt Euch aus Code: exit Im Grunde sind damit die Vorbereitungen abgeschlossen. Synchronisiert nun da s erste Verzeichnis auf Euren Backupserver: Code: rsync -avz -ssh /cygdrive/c/Users/Hans --delete root@123.123.123.12:/home/Si cherung Wenn Ihr als Hans eingeloggt seid und das als Admin ausfhrt werden leider nic

ht alle Dateien kopiert. Stellt Hier erstmal sicher, dass keine Anwendungen offe n sind. Allerdings werden dennoch einige Files in Eurem Profilverzeichnis in Ben utzung sein und so nicht kopierbar. Also Sichert ein Profilverzeichnis auf die A rt immer als anderer Nutzer oder vom Admin Account aus. Aber auch wenn Ihr als e in Admin eingeloggt seid msst ihr Cygwin als Administrator starten (Rechtsklick), damit auf die Verzeichnisse eines Users ohne Meckern zugegriffen werden kann. I st zwar umstndlich, aber das sind nunmal wesentliche Sicherheitseinstellungen die auch Sinn machen. Code: rsync -avz -ssh /cygdrive/d/"Meine Dokumente" --delete root@123.123.123.12:/ home/Sicherung Hier seht Ihr, dass das Verzeichnis mit Leerzeichen in " " gefasst sind. Nur so wird das unter Linux als ein Verzeichnis akzeptiert. Wenn Ihr alles kopiert habt haben wir nun jetzt ein Problem. Die Dateirechte , die wir unter Windows haben passen nicht auf der Linuxebene. Hierzu mssen wir d ann auf dem Server die Dateiberechtigung wieder richten. Geht nochmal auf den Ba ckuserver: Code: ssh root@123.123.123.12 Danach legt ein Script an: Code: nano /usr/local/bin/zugriff.sh und fllt das mit folgenden Inhalt: Code: #!/bin/sh chown -R Sicherung:Schicherung /home/Sicherung chmod -R 755 /home/Sicherung Speichert die Datei und macht diese ausfhrbar: Code: chmod +x /usr/local/bin/zugriff.sh Danach wieder aus dem Server ausloggen: Code: exit Jetzt knnt Ihr von Windows aus ber die Cygwin Konsole die Dateirechte reparier en, damit Ihr mit einem ftp Client auf die Files zugreifen knnt: Code: ssh root@123.123.123.12 'zugriff.sh' Das Praktische am rsync ist ja, dass nicht alle Dateien jedes Mal neu kopier

t werden mssen. Mit unserem Befehl wird abgeglichen, was sich nach der letzten Si cherung verndert hat. Deswegen werden nur neue Dateien kopiert und die gelscht, di e Ihr auf Eurem Windowsrechner auch gelscht habt. Damit Ihr nun nicht alles jedes Mal per Hand eingeben msst verfasst auf Eurer Cygwin Konsole ein eigenes Bash Sc ript, das dann wie folgt aussieht: Code: #!/bin/sh rsync -avz -ssh /cygdrive/c/Users/Hans --delete root@123.123.123.12:/home/Si cherung rsync -avz -ssh /cygdrive/d/"Meine Dokumente" --delete root@123.123.123.12:/ home/Sicherung ssh root@123.123.123.12 'zugriff.sh' Speichert diese Datei beispielsweise als backup.sh ab und macht diese ausfhrb ar: Code: chmod +x backup.sh Jetzt knnt Ihr Eure Backups immer aus der Cygwinkonsole heraus mit einem Code: ./backup.sh starten. Viel Spa! cu Gargi Zitieren Zitieren 30.05.2010 14:55 #2 Gargi Gargi ist offline Administrator Community Manager Avatar von Gargi Registriert seit 16.12.2007 Ort Forchheim Beitrge 5.621 Downloads 138 Uploads 50 Blog-Eintrge 195 Standard Ich habe mir die Sache mal auch seitens der Auslastung auf einen Windows Cli ent angesehen. Was das betrifft kann man die Sache auch entspannt nebenher laufe n lassen ohne dass dabei der Rechner merklich verlangsamt wird. So ist das schn!

Allerdings muss man bei Gigabyte groen Backups (zumindest auf einer NSLU2) et was Zeit mitbringen. Aber das ist dann nur beim ersten Backup so. Danach werden ja nur die nderungen gesichert. cu Gargi Zitieren Zitieren 01.06.2010 22:20 #3 Gargi Gargi ist offline Administrator Community Manager Avatar von Gargi Registriert seit 16.12.2007 Ort Forchheim Beitrge 5.621 Downloads 138 Uploads 50 Blog-Eintrge 195 Standard Als nchstes werden wir das alles vereinfachen, indem wir ein Icon auf dem Des ktop hinzufgen, ber das das Backup auch mit einem Doppelklick gestartet werden kan n. Klickt dazu zunchst mit der rechten Maustaste auf den Desktop und whlt Neu->Ve rknpfung aus.

Klickt auf weiter und gebt dann den Speicherort der bash.exe Eurer cygwin In stallation an. Diese liegt dann im Pfad /bin :

Vergebt nun einen Namen fr Eure Anwendung:

Danach nochmal einen Rechtsklick auf das neue Symbol und auf Eigenschaften

Unter Ziel msst Ihr nun den Speicherort Eures Backupscriptes eintragen. Das g eht ber einen Parameter. ndert diesen Wert Eurer Installation gem ab: Code: E:\cygwin\bin\bash.exe --login -i '/bin/backup' (das Shellscript haben wir in diesem Beispiel unter das Cygwinverzeichnis /b

in abgelegt)

Klickt dann auf Erweitert und legt fest, dass das Programm als Admin ausgefhr t werden soll (falls Ihr Nutzerprofile sichert).

Ebenso knnt Ihr dann noch ein schnes Icon auswhlen.

Speichert die nderung. Jetzt knnt Ihr das Backup auch ber einen Doppelklick sta rten. cu Gargi Zitieren Zitieren 02.06.2010 01:33 #4 Gargi Gargi ist offline Administrator Community Manager Avatar von Gargi Registriert seit 16.12.2007 Ort Forchheim Beitrge 5.621 Downloads 138 Uploads 50 Blog-Eintrge 195 Standard Zum Schluss natrlich noch der Hinweis, dass man das Backup natrlich dann auch als zeitgesteuerte Aufgabe von Windows aus erledigen lassen kann. Das ist dann n atrlich die praktischste Methode, wobei man dann als User nicht mehr selbst daran denken muss, seinen Datenbestand mit dem Datenserver abzugleichen. Unter Windows 7 geht dazu beispielsweise auf die Systemsteuerung und den Ber eich System und Sicherheit. Dort findet Ihr dann unter Verwaltung den Unterpunkt Aufgaben planen. Wenn hierbei Userprofile gesichert werden mssen, dann ruft das alles als Administrator auf, damit spter der Task auch als Admin gefahren wird. W enn es normale anderweitige Verzeichnisse sind, dann gengt natrlich ein Useraccoun t. Klickt nun in der rechten Spalte auf den Punkt einfache Aufgabe erstellen und arbeitet da den Assistenten ab. Als Ereignis msst Ihr natrlich ein Programm start en lassen. Tragt dann bei dem zu startenden Programm den Pfad zur bash.exe ein ( z.b. E:\cygwin\bin\bash.exe) und als Option dann den Pfad zu Eurem Script im Cyg winbereich (--login -i '/bin/backup'). Das war es dann auch eigentlich im Grunde. Den Task knnt Ihr dann spter ndern/b earbeiten oder wieder lschen, wenn Ihr in der linken Spalte auf den Ordner Aufgab enplanungsbibliothek klickt. In der Mitte des Fensters wird dann Euer neuer gepl anter Task angezeigt. Einen Rechtsklick darauf und Ihr knnt die Eigenschaften nac

hbearbeiten. Schaut Euch hierbei die Registerbltter "Bedingungen" und "Einstellun gen" nochmal etwas nher an. Denn dort knnt Ihr beispielsweise weitere Feinheiten f estlegen, wie das Ausfhren des Tasks nur dann, wenn eine Netzwerkverbindung vorha nden ist (sehr sinnig auch bei unserer speziellen Sicherung, da das ja ber das Ne tzwerk passiert!), das Reativieren des Rechners, wenn er sich im Ruhezustand bef indet oder wie sich der Taskplaner verhalten soll, wenn der Rechner zum Zeitpunk t der geplanten Ausfhrung ausgeschaltet war. Hier gibt es in dem Bereich einige Varianten. Ebenso schaut die Planung unte r einem Windows XP oder Vista wieder etwas anders aus, worauf ich jetzt nicht be i jedem einzelnem Betriebssystem darauf eingehen kann. Wichtig nur ist zu wissen , dass man die Ausfhrung des Cygwin Bashes auch in Bezug eines verknpften Shell Sk riptes ber die Aufgabenplanung vom System her selbststndig erledigen lassen kann. In unserem Fall ist das auch eine empfehlenswerte Sache, da wie wir gesehen habe n, der rsync das System nicht lahm legt whrend Daten ber das Netz gepumpt werden. Zusammen mit dem Beitrag zum Thema rsync auf eine USB Platte ( http://www.ga rgi.org/showthread.php?...rne-USB-Platte ) habt Ihr jetzt eine Variante zur Sich erung Eurer Daten kennen gelernt, die in Kombination mit einwenig Linux Wissen e ine durchaus professionelle Lsung darstellt, die man sowohl im privaten als auch im geschftlichen Bereich einsetzen kann und hier nicht kostspielige Software dafr bentigt. Zudem der rsync in der Welt der Linux Administratoren ein wesentliches u nd unverzichtbares Handwerkszeug ist, das auch in der Windowswelt dank Ports wie dem Cygwin ebenso seine Verwendung finden kann. Viel Spa beim Datensichern und Basteln! Euer Gargi