Backup Job

R

rasputin_att

Knowledge base'ler
Gibt es eine möglichkeit ein backup zu automazisieren?
also das läuft im moment so mit meinem server:

ich connecte mich mit ssh, logge mich mit einen user ein und gehe in ein backup verzeichniss.
dort gebe ich den Befehl um den /home ordner der Benutzer zu sichern:
"tar -cjf backup_user_dd-mm-yy.tar.bz2"
am ersten eines Monats ein Monatsbackup des kompletten Servers:
"tar -cjf backzp_cme_mm-yy.tar.bz2"

dies lasse ich über nacht laufen, also läuft mein laptop nachts durch, was kein problem ist, um die konsole offen zu halten.
Morgens wenn ich aufstehe kopieren ich die Daten auf einen Privaten backup server.
Habe mir dafür auf meiner kiste (server) die "ftp" funktion per yast besorgt. Also nochmal zu übersicht ich mache folgendes:

Abends ca 22 Uhr:
ssh bla@123.123.123.123
cd /der/backup/ordner
tar -cjf backup_user_11-11-11.tar.bz2 bzw. tar -cjf backzp_cme_11-11.tar.bz2

Morgens nach einer Nacht:
ftp backup.server.bla
user bla123
pwd xyz_so_und_so
put backup_user_11-11-11.tar.bz2

das wird dann rüber kopiert.

Ich möchte das automatisieren, also nicht manuell machen, ich denke das es über Crontabs/cronjobs geht. geht das??

Wenn ja wie? am besten so das ich nicht andauernd die PWs eingeben muss?
Ich brauche die backups der user ordner jeden tag da viel verändert wird, und ein Monatsverlust daten wäre tödlich. Allein schon für unsere gameserver/ts-server.
Das Monats backupp soll ALLES, also alle wichtigen Ordner, die bearbeitet werden...

Gibts da ein funktionierendes Programm? oder ein script? weil es ist nervig immer manuell zu machen..

Ich hoffe diesmal auf eine antowrt...*bitte*

Danke schonmal für eure hilfe...
MfG Rasputin

Ps.: ich weiß nich ob ich hier in dem forum richtig bin, falls nicht verschiebts bitte...
 
Also ich geb dir mal die relevanten Stichpunkte, damit kannst du anfangen und dich wieder melden wenn was nicht klappt:

Ich möchte das automatisieren, also nicht manuell machen, ich denke das es über Crontabs/cronjobs geht. geht das??

Ja, sogar ziemlich einfach.

- script schreiben
- mit

Code:
chmod +x dein_script

ausführbar machen
- als cronjob eintragen (google oder manpage)

Wenn ja wie? am besten so das ich nicht andauernd die PWs eingeben muss?

- entweder über "ssh authentification without password" (kuck mal hier dazu)
- oder du arbeitest mit "expect"
- generell solltest du sftp nehmen (geht auch über ssh)

Gibts da ein funktionierendes Programm? oder ein script? weil es ist nervig immer manuell zu machen..

Gibt es bestimmt irgendwo in den Weiten des Netzes, aber selber schreiben dürfte nicht viel zeit kosten.
Einen Großteil der Befehle hast du ja schon gepostet.
Etwas anpassen, fertig.

HTH
 
Hallo
Schau dir einfach mal rsync an. Die Manpage ist richtig gut, auch mit Beispielen.
Ich denke damit wirst du in Verbindung mit Crontab glücklich.
Mache ich selbst seit Jahren so, von zwei Webservern.
sssh key einrichten ist dabei die beste Lösung.

Gruß Wolfgang
 
Hallo,

ich kann storeBackup empfehlen. Damit lasse ich jede Nacht ein Backup auf unserem File Server erstellen. Das Programm ist in Perl geschrieben, bietet viele Einstellungsmoeglichkeiten ( bspw. wie lange und wie viele Backups aufbewahrt werden sollen...). Die Dateien werden ge-tar-t und ge-zip-ped und es arbeitet relativ platzsparend, dadurch, dass bei existierende, nicht veraenderte Dateien nicht oefters gesichert werden.

Ein Artikel hier: http://www.linuxfocus.org/Deutsch/January2004/article321.shtml

und zu Sourceforge geht's hier lang: http://sourceforge.net/projects/storebackup

Gruss,
nille
 
Ich habe mich mal für den Crontab entschieden. Mit dem Befehl

tar -cf "/das/ziel/verzeichniss/backup.tar" "/das/zu/sichernde/verzeichniss"

das geht auch ich bekomme eine *.tar datei in dem Zielordner und eine bestärtigungsmail. Jetzt stellt sich mir die frage wie ich auf meinen PASSWORTGESCHÜTZTEN Backupserver komme. Der Server wurde mir gestellt. Also war sozusagen "gratis" mit im Paket. Leider kann ich die Zugangsdaten nicht ändern oder sonstiges.
Gibts eine möglichkeit das so zu machen das das pw irgendwie gespeichert wird und ich das nicht andauernd eingeben muss??


---

Mit Storebackup habe ich das Problem, dass er mir von jeder Datei ein Archiv erstellt. Das ist ziemlich blöd bei so an die 3000-5000 daten wenn man das backup rückspielen will. Mir wäre lieb wenn er ich einen Ordner mit dem namen des datums erstellen würde sondern ein Archiv mit Ordnerstruktur dinr. also so wie mit meiner obigen "tar" variante...ansonsten ist es ganz gut...

MfG Rasputin
 
Hallo
Siehe ~/.netrc.
Das Archiv dann einfach per ftp ode was immer du hast/willst transportieren.
Wenn ssh Zugang, dann geht das mit scp oder rsync noch einfacher.

Beispiele dazu findes du auch im Board.

Gruß Wolfgang
 
Also ich habe mich jetzt für folgende Variante entschieden:

Zuerst das Zielverzeichniss in ein Archiv packen:
Code:
tar -cf backup_dd_mm_yy.tar /Verz1
danach:
Code:
ftp -inv  backup.server.xy << EOF;
user benutzer1 password1
put backup_dd_mm_yy.tar
bye
EOF

Er läd alles hoch ich bin glücklich...fast

Ist es möglich in diese automatisierung die Namensgebung einzubinden? Also von dem *.tar archiv. ich möchte das es nach dem aktuellen Datum benannt wird. Also so z.b.:
backup_31_3_07.tar
wobei das Datum sich halt nach dem aktuellen richten soll, geht das?

Und dann noch: ein *.tar.bz2 archiv ist mehr gepackt, also kleiner...lohnt sich das? oder reicht .tar vollkommen aus??

LG RA_ATT
 
Hallo
gzip reicht IMHO aus.
Der Vorteil gegenüber bzip2 ist eine wesentliche Performance, gegenüber nicht so viel Ersparniss an Größe.
Das Datum in den Filename ist sehr simpel.
Schau dir einfach mal date an.
GNU tar kennt für gzip eine Option.
Code:
tar -czf Filename _$(date "+%Y_%m_%d").gz source

Gruß Wolfgang
 
jawoll, danke, es geht alles einwadnfrei...und nun zu meinem nächsten thread...xD...das muss ich die lösunge auch noch abarbeiten...^^...ich fang shconmal an

danke für eure Hilfe...

MfG RA_ATT
 

Ähnliche Themen

Mein erstes größeres Skript.

Crontab Tägliches Backup

[HowTo] TeamSpeak 2 - RC2 - Server (Deutsch/Englisch)

Zurück
Oben