Backup per Cronjob in tar.gz
Re: Backup per Cronjob in tar.gz
ich habs ja aus "man ftp" ;o :P
Re: Backup per Cronjob in tar.gz
dann unterscheiden sich offensichtlich die einzelnen ftp Programme massiv. Ich kann bei mir jedenfalls keine Befehle per Kommandozeile eingeben, nur den Host. "connect" heißt bei mir "open".
Eine detaillierte Fehlermeldung wäre schon hilfreich.....
Eine detaillierte Fehlermeldung wäre schon hilfreich.....
Re: Backup per Cronjob in tar.gz
Code: Select all
blub:~# ./backup.sh
BackUp script Startet....
tar: Removing leading `/' from member names
var/lib/mysql/
usw....
Backup Daten wurden Erfolgreich erstellt!
usage: ftp host-name [port]
ftp>
Es ist wie dummi geschrieben hat
am besten erstellst Du das script direkt auf dem Server also über putty oder winscp, ansonsten spinnt er einfach. Danach musst Du noch Rechte setzen, chmod 700.
Hab den Fall selbst gehabt.
Hab den Fall selbst gehabt.
Re: Backup per Cronjob in tar.gz
habs mal gemacht nun kommt:
Code: Select all
Backup Daten wurden Erfolgreich erstellt!
./backup.sh: /root/backup/backup_www_20030917%.tar.gz: No such file or directory
usage: ftp host-name [port]
ftp>
Re: Backup per Cronjob in tar.gz
EDIT: Problem hab ich gelöst. war eine Leerstelle zu viel. Danke nochmal an alle! ;)
Hallo,
ich es jetzt nochmal mit VI gemacht und nun klappt es. Jedoch fügt er das Datum nicht mit an.
Wie kann ich mit VI ein `-Zeichen einfügen??
ich habe es nachträglich mit dem Editor von MidnightComanner gemacht, aber er fügt das Darum dennoch nicht an.
ich habe also nur einfach eine Datei, die dann z.B. backup_www_.tar.gz heißt.
Hallo,
ich es jetzt nochmal mit VI gemacht und nun klappt es. Jedoch fügt er das Datum nicht mit an.
Wie kann ich mit VI ein `-Zeichen einfügen??
ich habe es nachträglich mit dem Editor von MidnightComanner gemacht, aber er fügt das Darum dennoch nicht an.
ich habe also nur einfach eine Datei, die dann z.B. backup_www_.tar.gz heißt.
Re: Backup per Cronjob in tar.gz
#!/bin/sh
DATUM=`date '+%Y-%m-%d'`
ZIEL=/backup/
tar zcvf ${ZIEL}backup_namedesfiles_${DATUM}.tar.gz /pfad/
So sollte es gehen, bei mir funzt es prima
DATUM=`date '+%Y-%m-%d'`
ZIEL=/backup/
tar zcvf ${ZIEL}backup_namedesfiles_${DATUM}.tar.gz /pfad/
So sollte es gehen, bei mir funzt es prima
Re: Backup per Cronjob in tar.gz
hmm also bei mir hat der noch fehler mit dem "ftp" hat jemand noch ne andere idee wie man was auf nem ftp uppen kann ohne "ftp" zu benutzen ?
Re: Backup per Cronjob in tar.gz
gibts jetzt nu eine funzende Lösung??
wenn ja bitte mal den kompletten Code posten! thx!
wenn ja bitte mal den kompletten Code posten! thx!
Re: Backup per Cronjob in tar.gz
Wenn ich per Script Files von Server A nach B kopieren will, verwende ich immer wget (was natürlich auf Server B aufgerufen werden muss).
rsync wäre aber auch eine Alternative.
rsync wäre aber auch eine Alternative.
-
Anonymous
Re: Backup per Cronjob in tar.gz
Ich hätte da auch mal eine frage zu diesen Thema .......
Ich habe mir nun mal auch für ein Backup das Schribt genommen und muss sagen das nun das Backup der User wunderbar jede nacht um 3 Uhr erstellt wird ;-) (HTML & MYSQL)
Nun, was für ein Befehl müsste ich den nun verwenden und das *.tar.gz
wider zu entpacken ?
(natürlich an der Originalstelle mit den Original rechten und Bezitzern (Gruppen)
Nach möglichkeit soll sogar das Verzeichniss wider hergestellt werden falls es nicht mehr vorhanden ist ;-)
Danke schonmal in Vorraus[/code]
Ich habe mir nun mal auch für ein Backup das Schribt genommen und muss sagen das nun das Backup der User wunderbar jede nacht um 3 Uhr erstellt wird ;-) (HTML & MYSQL)
Code: Select all
#! /bin/sh
NAME=`date +%d-%m-%Y`
ZIEL1=/Backup/user/web1/
ZIEL2=/Backup/user/web2/
ZIEL3=/Backup/user/web3/
ZIEL4=/Backup/user/web4/
ZIEL5=/Backup/user/web5/
ZIEL6=/Backup/user/web6/
ZIEL7=/Backup/user/web7/
ZIEL8=/Backup/user/web8/
ZIEL9=/Backup/user/web9/
ZIEL10=/Backup/user/web10/
ZIEL11=/Backup/user/web11/
ZIEL12=/Backup/user/web12/
#BACKUP (WEB1)
tar zcvf ${ZIEL1}HTML-BACKUP_${NAME}.tar.gz /home/www/web1/
tar zcvf ${ZIEL1}MSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web1_1/
#BACKUP (WEB2)
tar zcvf ${ZIEL2}HTML-BACKUP_${NAME}.tar.gz /home/www/web2/
tar zcvf ${ZIEL2}MSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web2_1/
#BACKUP (WEB3)
tar zcvf ${ZIEL3}HTML-BACKUP_${NAME}.tar.gz /home/www/web3/
tar zcvf ${ZIEL3}MYSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web3_1/
#BACKUP (WEB4)
tar zcvf ${ZIEL4}HTML-BACKUP_${NAME}.tar.gz /home/www/web4/
tar zcvf ${ZIEL4}MYSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web4_1/
#BACKUP (WEB5)
tar zcvf ${ZIEL5}HTML-BACKUP_${NAME}.tar.gz /home/www/web5/
tar zcvf ${ZIEL5}MYSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web5_1/
#BACKUP (WEB6)
tar zcvf ${ZIEL6}HTML-BACKUP_${NAME}.tar.gz /home/www/web6/
tar zcvf ${ZIEL6}MYSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web6_1/
#BACKUP (WEB7)
tar zcvf ${ZIEL7}HTML-BACKUP_${NAME}.tar.gz /home/www/web7/
tar zcvf ${ZIEL7}MYSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web7_1/
#BACKUP (WEB8)
tar zcvf ${ZIEL8}HTML-BACKUP_${NAME}.tar.gz /home/www/web8/
tar zcvf ${ZIEL8}MYSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web8_1/
#BACKUP (WEB9)
tar zcvf ${ZIEL9}HTML-BACKUP_${NAME}.tar.gz /home/www/web9/
tar zcvf ${ZIEL9}MYSQL-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web9_1/
#BACKUP (WEB10)
tar zcvf ${ZIEL10}HTML-BACKUP_${NAME}.tar.gz /home/www/web10/
tar zcvf ${ZIEL10}MYSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web10_1/
#BACKUP (WEB11)
tar zcvf ${ZIEL11}HTML-BACKUP_${NAME}.tar.gz /home/www/web11/
tar zcvf ${ZIEL11}MYSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web11_1/
tar zcvf ${ZIEL11}MYSQL-DB2-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web11_2/
#BACKUP (WEB2)
tar zcvf ${ZIEL12}HTML-BACKUP_${NAME}.tar.gz /home/www/web12/
tar zcvf ${ZIEL12}MYSQL-DB1-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web12_1/
Nun, was für ein Befehl müsste ich den nun verwenden und das *.tar.gz
wider zu entpacken ?
(natürlich an der Originalstelle mit den Original rechten und Bezitzern (Gruppen)
Nach möglichkeit soll sogar das Verzeichniss wider hergestellt werden falls es nicht mehr vorhanden ist ;-)
Danke schonmal in Vorraus[/code]
Re: Backup per Cronjob in tar.gz
hab zwar keine antwort auf deine Frage, aber wär übersichtlicher wenn du eine Variable machst in der steht wieviele User du hast, und dann eine Schleife einbaust die bis zur Userzahl hochzählt und da immer das backup macht...sonst haste bei vielen Usern ein ewig langes Script!
Re: Backup per Cronjob in tar.gz
1. bau dir eine Schleife und
2. benutz tar jcvf - das benutz bzip2 zur Kompression
Die Dateien sind damit kleiner, aber die Last auch höher- was aber um 3 Uhr morgens nicht auffallen sollte.
Entpacken kannst du die Dateien mit tar xvzf Datei.tar.gz bzw mit tar xvjf Datei.tar.bz2
2. benutz tar jcvf - das benutz bzip2 zur Kompression
Die Dateien sind damit kleiner, aber die Last auch höher- was aber um 3 Uhr morgens nicht auffallen sollte.
Entpacken kannst du die Dateien mit tar xvzf Datei.tar.gz bzw mit tar xvjf Datei.tar.bz2
-
titus.hanke
- Posts: 9
- Joined: 2004-05-31 16:42
Schleife...
Hi Leute,
bin froh das ich dieses Posting gefunden habe. Koennte mir jemand den Code fuer besagte Schleife posten? Bin programmiertechnisch voellig unbegabt und gluecklich, dass ich Euer Skript zum Laufen bekommen habe!!!
Vielen Dank und Gruesse aus Florenz,
Titus.
bin froh das ich dieses Posting gefunden habe. Koennte mir jemand den Code fuer besagte Schleife posten? Bin programmiertechnisch voellig unbegabt und gluecklich, dass ich Euer Skript zum Laufen bekommen habe!!!
Vielen Dank und Gruesse aus Florenz,
Titus.
Re: Backup per Cronjob in tar.gz
Hallo Ich habe es wie folgt gelöst
(du mußt natürlich die Verzeichnisse anpassen ;-)
Die zeile mit dem Ihnalt
find /home/www/web1/html/Backup/user/web${i} -mtime +5 | xargs rm -f;
Kannst du lassen oder rausnehmen, oder ändern ;-)
Sie hat nur den Zweck Backups die älter wie 5 Tage sind zu löschen
(damit die Platte nicht ruckzug voll ist)
Der wert bei
while [ $i -le 24 ]
muss auch angepasst werden !
(24 Webs = 24)
wen du z.B. 2000 Webs hättest dann lautet die zeile natürlich
while [ $i -le 2000 ]
Ich hoffe ich konnte helfen
(du mußt natürlich die Verzeichnisse anpassen ;-)
Die zeile mit dem Ihnalt
find /home/www/web1/html/Backup/user/web${i} -mtime +5 | xargs rm -f;
Kannst du lassen oder rausnehmen, oder ändern ;-)
Sie hat nur den Zweck Backups die älter wie 5 Tage sind zu löschen
(damit die Platte nicht ruckzug voll ist)
Code: Select all
#! /bin/sh
NAME=`date +%d-%m-%Y`
i=2;
while [ $i -le 24 ]
do
find /home/www/web1/html/Backup/user/web${i} -mtime +5 | xargs rm -f;
tar zcvf /home/www/web1/html/Backup/user/web${i}/web${i}-HTML-BACKUP_${NAME}.tar.gz /home/www/web${i}/html/ ;
tar zcvf /home/www/web1/html/Backup/user/web${i}/web${i}-MYSQL-BACKUP_${NAME}.tar.gz /var/lib/mysql/usr_web${i}_*/;
i=$[$i+1];
done
while [ $i -le 24 ]
muss auch angepasst werden !
(24 Webs = 24)
wen du z.B. 2000 Webs hättest dann lautet die zeile natürlich
while [ $i -le 2000 ]
Ich hoffe ich konnte helfen
-
titus.hanke
- Posts: 9
- Joined: 2004-05-31 16:42
Re: Backup per Cronjob in tar.gz
super vielen Dank!!! Werde es gleich ausprobieren!
Viele Gruesse, Titus.
Viele Gruesse, Titus.
Re: Backup per Cronjob in tar.gz
Zusatz:
was zwischen `` steht, wird in der sh ausgeführt
was zwischen '' steht, wird nicht interpretiert
was zwischen ´´ steht, wird auch interpretiert
Kann man leider nur mittels der Backslashsubstitution umgehen
also ` ´ '
msgbeep
was zwischen `` steht, wird in der sh ausgeführt
was zwischen '' steht, wird nicht interpretiert
was zwischen ´´ steht, wird auch interpretiert
Kann man leider nur mittels der Backslashsubstitution umgehen
also ` ´ '
msgbeep
Re: Backup per Cronjob in tar.gz
hi,
kann ich die tar-Datei mit einem Passwort verschlüsseln?
Und wie kann ich die datei dann per Mail verschicken.
kann ich die tar-Datei mit einem Passwort verschlüsseln?
Und wie kann ich die datei dann per Mail verschicken.