Orgapage.Net





t3n Magazin - Jetzt im Abo bestellen


Backups

Sehr nützlich, um Backups auf einen anderen Rechner zu erstellen ist der Befehl rsync.
Um damit den Ordner "/usr/local/" auf den Server mit der Domain "server.tdl" und in dessen Ordner "/usr/backup/" zu kopieren gibt man folgendes ein:
rsync -az /usr/local/ benutzer@server.tdl:/usr/backup/
"benutzer" steht dabei für den Benutzernamen mit dem man sich bei dem Zielserver anmelden möchte.
Nach eingabe des Befehls muss man das Passwort des Benutzers eingeben.

Mit der Option --partial ist es möglich nur Teilweise übertragene Daten auf dem Backupserver zu behalten. Andernfalls würden sie gelöscht werden. Mit der Option --delete kann man Dateien, die nicht mehr auf dem Quellrechner existieren, auch auf dem Zielrechner entfernen.
rsync -az --partial --delete /usr/local/ benutzer@server.tdl:/usr/backup/

Damit die Daten verschlüsselt über die Leitung übertragen werden, gibt man zusätzlich noch -e "ssh -c blowfish" ein.
rsync -az -e "ssh -c blowfish" --partial /usr/local/ benutzer@server.tdl:/usr/backup/


Beispiel: Orgapage-Backup
Hier mal ein ausführlicheres Backup-Script, dass in etwas abgewandelter Form zum Backup der Orgapage-Daten genutzt wird.
    # Dump Databases
    mysqldump -h localhost -u mysql_user -ppassword -AaceQ --add-drop-table > db_backups/main.sql

    # Pack Databases
    tar -cf ../../db_backups.tar db_backups/
    gzip -f ../../db_backups.tar

    # Transfer files to backupserver
    rsync -aqb -e "ssh -c arcfour" --delete-after --progress --backup-dir=/dir/to/second/backup --exclude=logs/* --partial /dir/to/files/to/backup/ user@hostname.de:backup

    # Pack old backup-files and store them
    ssh user@hostname.de 'tar -cf backup_archiv/backup_$(date +%g%m%d).tar backup2/'
    ssh user@hostname.de 'gzip -f backup_archiv/backup_$(date +%g%m%d).tar'

    # Empty backup-dir
    ssh user@hostname.de 'rm -Rf backup2/*'



mysqldump - MySQL-Datenbank exportieren
mysqldump -h localhost -u mysql_user -ppassword -AaceQ --add-drop-table > db_backups/main.sql
Über diesen Befehl, lässt sich ein Backup der MySQL-Datenbank anlegen. Durch -h gibt man den Hostnamen der Datenbank an -u ist der Benutzer und -p das Passwort. Bei letzteren sollte beachtet werden, dass dieses unmittelbar (also ohne Leerzeichen) folgen muss.


Passwort-Eingabe unterbinden
Möchte man oben gezeigtes Backup-Script automatisch ausführen lassen (z.b. als Cronjob), steht man vor dem Problem dass das Script bei jedem Aufruf ein Passwort verlangt. Unter autologin ist beschrieben, wie man dies umgehen kann.


Weitere Seiten zu diesem Thema:
URL: Von:
Titel:  
Captcha:
Text bewerten:
Aktuelle Wertung: 0 (0x)
Seit der letzten Änderung: 0 (0x)

Kommentare     Seite: [0]
22. Oct. 2003 - 10:28 erstellt von Oli
-b fügt bei den übertragenen und schon vorhandenen Dateien ein ~ an, find ich nicht so wichtig.

und --partial behält nur teilweise übertragene Dateien. Meinstest du nicht eher "-C"?

Dann sieht das im Endeffekt so aus:
rsync -Cav -e ssh /mein/pfad benutzer@server:/fremder/pfad/
22. Oct. 2003 - 14:04 erstellt von KnoX
Mit Partial hast du recht.
Rsync überträgt automatisch nur geänderte Daten und nicht alle.

Ich werde das noch korrigieren, sowie den Text etwas ergänzen.

Ich war gestern recht müde und habe den Text einfach so runtergeschrieben. Den muss ich wirklich nochmal überarbeiten ;-)
07. Apr. 2006 - 10:23 erstellt von Cyrano
Kann ich die Passworteingabe auch automatisieren??

Die Kommentar-Funktion ist derzeit leider deaktiviert.
Bitte nutze das Forum statt dessen.