+ Antworten
Ergebnis 1 bis 1 von 1

Thema: Webspace Backup über rsync

  1. #1
    Wohnt hier Avatar von cylance
    Registriert seit
    10.11.2010
    Beiträge
    2.313
    Bedankte sich
    189
    Erhielt 592 Danksagungen
    in 562 Beiträgen

    Idee Webspace Backup über rsync

    Liebe Forengemeinde,

    da das jahr sich dem Ende neigt und ich Zeit hatte ein paar Projekte zu testen möchte ich den Pinguinen unter uns und solchen die es werden wollen einen Ansatz vorstellen mit dem sich der Webspace mit dem lokalen Inhalt der Festplatte syncronisieren lässt.
    Dieses Thema mag wohl schon in anderer Form behandelt worden sein, möglicherweise auch hier (ich habe allerdings nicht wirklich danach gesucht).

    Bei der Vielfalt an Linuxdistributionen sieht man inzwischen deutlich den Trend, dass sich die Installation zunehmend vereinfacht. Sicher um ein Betriebssystem kennenzulernen muss man damit arbeiten. Wer von der Windows-Welt zu Linux wechselt wird mit Sicherheit auch etwas Einarbeitungszeit benötigen. Doch für bestimmte Aufgaben lohnt es sich sich näher damit zu beschäftigen (auch wenn man hin und wieder ein paar kryptische Befehle über die Kommandozeile eintippen muss ).

    Der Plan: Ich hab da meinen Webspace und komme nur per FTP drauf.

    Nun üblicherweise nimmt man dann einen FTP-Client und schaufelt die Daten von einem System aufs andere. Toll wäre es allerdings wenn man den FTP-Space direkt ins Dateisystem einhängen könnte.
    Geht das überhaupt? Definitiv ja.

    http://kefk.org/safety/mounten.eines...bian.gnu.linux

    http://www.exanto.de/sftp-und-ftp-un...x-mounten.html

    http://wiki.ubuntuusers.de/curlftpfs
    http://wiki.ubuntuusers.de/FUSE

    http://blog.simlau.net/rsync-auf-einen-ftp-server.html

    http://www.jodler.ch/bstocker/?p=1521


    Voraussetzung dafür ist dass fuse (filesystem in Userspace) sowie curlftpfs installiert ist, besser wäre selbstverständlich eine Verschlüsselte Übertragung via FTPs oder SFTP. Doch wenden wir uns zunächst dem Grundprinzip zu.

    Der Server lässt sich nach dem Erstellen geeigneter Verzeichnisse als Mountpoints (das sind die Orte im Verzeichnisbaum wo dann die Dateien zu finden sind), z. B. /mnt/FTP-Space mit folgendem Befehl in das Dateisystem einhängen

    Code:
    curlftpfs Benutzername:Passwort@ftp-server.de/Pfad/zum/Webspace/ /mnt/FTP-Space
    wechseln wir anschliessend in das Verzeichnis /mnt/FTP-Space mit

    Code:
    cd /mnt/FTP-Space
    und lassen uns den Inhalt mittels
    Code:
    ls -al
    oder
    Code:
    ll
    anzeigen, so sollten wir nun unseren Webspace vorfinden.


    Na toll wird der eine oder andere nun sagen. Was bringt mir das nun?

    Nun unter Linux gibt es den schönen Befehl rsync den man auch hier wunderbar einsetzen kann.

    http://wiki.ubuntuusers.de/rsync


    Die syntax lautet
    Code:
    rsync [OPTIONEN] <Quelle> <Ziel>
    verwenden wir nun den Befehl

    Code:
    rsync -avz /mnt/FTP-Space /Pfad/zum/Backupdir
    so erhalten wir ein Backup unter

    /Pfad/zum/Backupdir/FTP-Space


    erweitert man den Befehl um die Option --delete so werden nicht mehr vorhandene Dateien im Backup gelöscht

    Code:
    rsync --delete -avz /mnt/FTP-Space /Pfad/zum/Backupdir
    interessanter ist die Option der Angabe eines Archivverzeichnisses in das die gelöschten Dateien verschoben werden. Auf diese Weise lassen sich Veränderungen im Dateisystem verfolgen was für die Intrusion-Detection nicht ganz uninteressant ist

    Code:
    rsync --delete -avbz /mnt/FTP-Space /Pfad/zum/Backupdir --backup-dir=/Pfad/zum/Archivdir
    Hat man einen SFTP-Zugang so kann man sich curlftpfs schenken und verwendet gleich rsync mit den entsprechenden Optionen


    z.B. für den user root:

    cd /root/.ssh

    ssh-keygen -t rsa -f rsync.id

    ssh -i ./.ssh/rsync.id login.to.serverxyz.de

    (den Key müsst Ihr natürlich auf den Server nach .ssh in das Keyfile übertragen )

    Ein Paar Worte zum Befehl:

    --delete sorgt dafür, dass Dateien , die am Quellort gelöscht wurden, auch am Zielort gelöscht werden
    -a ist der Archiv-Modus, d.h. er behält alle Permissions, Symlinks, Zeiten, Besitzer und Gruppen bei
    -v zeigt alle Dateien an, die übertragen werden.
    -z überträgt die Dateien komprimiert
    -e nutzen wir in diesem Fall, um die Übertragung über SSH laufen zu lassen.
    -b sorgt dafür, dass durch die Option --delete gelöschte sowie alle veränderten Objekte gesichert
    werden mit --backup-dir=Verzeichnis kann man ein Verzeichnis dafür angeben

    Und als shellscript
    Code:
    #!/bin/sh
    
    rsync --delete -avzbe 'ssh -i /root/.ssh/rsync.id' root@mein.server.de:/srv/www /Pfad/zum/Backupdir  --backup-dir=/Pfad/zum/Archivdir
    das man modifizieren kann für bestimmte Verzeichnisse

    Code:
    #!/bin/sh
    
    rsync --delete -avzbe 'ssh -i /root/.ssh/rsync.id' root@mein.server.de:/srv/www /Pfad/zum/Backupdir/dir1 --backup-dir=/Pfad/zum/Archivdir
    
    rsync --delete -avzbe 'ssh -i /root/.ssh/rsync.id' root@mein.server.de:/srv/www /Pfad/zum/Backupdir/dir2 --backup-dir=/Pfad/zum/Archivdir
    
    rsync --delete -avzbe 'ssh -i /root/.ssh/rsync.id' root@mein.server.de:/srv/www /Pfad/zum/Backupdir/dir3 --backup-dir=/Pfad/zum/Archivdir

    Und dann kam die Frage: Geht das auch bei VPN Verbindungen?


    Hrmpf. Ja es geht, allerdings habe ich recht viele Distributionen in der letzten Zeit zum Testen auf der Platte gehabt und bin daher etwas nörgelig.

    Also die klassische Variante eine Netzwerkkarte im System einzuhängen läuft über ifup. Inzwischen wird jedoch auch die Variante über den Networkmanager bereitgestellt.

    http://de.wikipedia.org/wiki/NetworkManager

    http://wiki.ubuntuusers.de/NetworkManager?redirect=no

    Ansich eine komfortable Sache wenn mir nicht regelmassig der KDE-Networkmanager abgeschmiert wäre.
    Ich konnte jedoch feststellen, dass der Networkmanager aus dem Gnome-Paket zuverlässiger zu laufen scheint.

    hier mal noch ein weiterführender Link dazu

    http://mschlander.wordpress.com/2011...opensuse-11-4/


    Und noch ein paar abschliessende Worte:

    Der Datenabgleich kann natürlich in beide Richtungen vorgenommen werden.

    Und die Verbindung zum FTP-Server beendet man mit
    Code:
    umount /mnt/FTP-Space
    Man kann sich das jetzt auch noch als cron-job einbinden der automatisiert läuft


    l_santa.gif
    Geändert von cylance (09.12.2011 um 15:39 Uhr)
    Meine Kristallkugel hat einen Sprung und die Tarotkarten hat's vom Tisch geweht. Detailierte Informationen sind hilfreich.
    We offer three kinds of service: good - chea p - fast. u can pick 2 of them
    FAQ vorn im Forum gelesen?

  2. Erhielt Danksagungen von:


+ Antworten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein