Ich habe mit Samba 1 Verzeichnis an meine WIN98s freigegeben und möchte nun immer nachts eine Sicherung der Daten durchführen. Ich würde dazu gerne lediglich die bash und einen cronjob verwenden. Die erzeugten gz's sollten als Bezeichnung immer den Tag der Sicherung haben. Ist so was überhaupt möglich, oder benötigt man dazu ein "richtiges" Program? -- WA-P - Beratung, Programmierung, Hosting Jochen Kächelin mailto:jk@wa-p.de
Jochen Kächelin wrote:
Ich habe mit Samba 1 Verzeichnis an meine WIN98s freigegeben und möchte nun immer nachts eine Sicherung der Daten durchführen.
Ich würde dazu gerne lediglich die bash und einen cronjob verwenden. Die erzeugten gz's sollten als Bezeichnung immer den Tag der Sicherung haben.
Ist so was überhaupt möglich, oder benötigt man dazu ein "richtiges" Program?
Mein Zip Sicherungsprogramm. Etwas umändern und du kannst deine Sicherung machen: #---------------------------------------------------------------- #!/bin/ksh # echo Sicherung von /home... cd / cd sicherung cd sicher-home i=0 d="`date -I`-$i.tar.gz" while ( test -e $d ) do i=`echo $i + 1 | bc` d="`date -I`-$i.tar.gz" done # echo $d # cp /dev/null $d echo Sicherung von /home nach /sicherung/sicher-home/$d tar czf /sicherung/sicher-home/$d /home chmod 600 /sicherung/sicher-home/$d echo Löschen der alten Sicherung auf Zip-Diskette... mount /zip cd /zip rm *.tar.gz cd /sicherung/sicher-home echo Kopiere $d auf Zip-Diskette... cp ./$d /zip umount /zip eject /zip echo Programm beendet und Zip-Diskette ungemountet! #---------------------------------------------------------------- -- _______Sven Schiwek_________________________________________________ | e-mail: sven.schiwek@gmx.net | www: http://sven-s.purespace.de | | sven.schiwek@web.de | http://www.azubi.ais-ag.de | |________________________Have a lot of Fun___________________________|
Hallo Sven, hallo Leute, Am Mittwoch, 24. Oktober 2001 15:25 schrieb Sven Schiwek:
Jochen Kächelin wrote:
Ich habe mit Samba 1 Verzeichnis an meine WIN98s freigegeben und möchte nun immer nachts eine Sicherung der Daten durchführen.
Ich würde dazu gerne lediglich die bash und einen cronjob verwenden. Die erzeugten gz's sollten als Bezeichnung immer den Tag der Sicherung haben.
Ist so was überhaupt möglich, oder benötigt man dazu ein "richtiges" Program?
Mein Zip Sicherungsprogramm. Etwas umändern und du kannst deine Sicherung machen:
sollte IMHO etwas korrigiert und/oder verkürzt werden... Außerdem sind noch ein paar Risiken und Nebenwirkungen enthalten ;-)
#!/bin/ksh # echo Sicherung von /home... cd / cd sicherung cd sicher-home
warum nicht einfach "cd /sicherung/sicher-home"?
i=0 d="`date -I`-$i.tar.gz" while ( test -e $d ) do i=`echo $i + 1 | bc` d="`date -I`-$i.tar.gz" done
nette Schleife, um den Dateinamen zu bestimmen. Werde ich mir merken...
# echo $d # cp /dev/null $d echo Sicherung von /home nach /sicherung/sicher-home/$d tar czf /sicherung/sicher-home/$d /home chmod 600 /sicherung/sicher-home/$d echo Löschen der alten Sicherung auf Zip-Diskette... mount /zip cd /zip rm *.tar.gz
riskant. Was ist, wenn nicht ins Verzeichnis /zip gewechselt werden kann? Dann werden alle *.tar.gz-Dateien im aktuellen Verzeichnis gelöscht. Besser: "rm /zip/*.tar.gz" oder "cd /zip && rm *.tar.gz"
cd /sicherung/sicher-home echo Kopiere $d auf Zip-Diskette... cp ./$d /zip
gleiches Problem wie oben. Was spricht dagegen, einem Befehl den kompletten Pfad mitzugeben?
umount /zip eject /zip echo Programm beendet und Zip-Diskette ungemountet!
Bis auf diese Kleinigkeiten ist das Script OK. Gruß Christian Boltz -- Linux is like a wigwam: no gates, no windows, but an apache inside.
Christian Boltz wrote (Mittwoch, 24. Oktober 2001 21:35):
i=0 d="`date -I`-$i.tar.gz" while ( test -e $d ) do i=`echo $i + 1 | bc` d="`date -I`-$i.tar.gz" done
nette Schleife, um den Dateinamen zu bestimmen. Werde ich mir merken...
Merk dir lieber das "komprimierte" format: ;-) i=0 while d="`date -I`-$i.tar.gz" ; test -e $d #nur letzter exit-code zählt do i=$(($i+1)) #echo $((1+1)) ===> output: 2 done Wenn schon Schleifen, dann gleich ganz - und nicht den Sonderfall am Anfang oder am Ende draußenlassen... Thomas.
On Thu, 25 Oct 2001, Thomas Hofer wrote:
Christian Boltz wrote (Mittwoch, 24. Oktober 2001 21:35):
i=0 while d="`date -I`-$i.tar.gz" ; test -e $d #nur letzter exit-code zählt do i=$(($i+1)) #echo $((1+1)) ===> output: 2 done
Und bitte weist die Anwender darauf hin, dass der Befehl date -I erst ab einer gewissen Version laeuft. Bei mir geht das mit meinem Date naemlich nicht. "date --version" ergibt hier "date (GNU sh-utils) 1.16" Da behilft man sich dann mit date +%Y-%m-%d Gruss Peter Blancke -- Nachtwaechter ist der Wahnsinn, weil er wacht...
Moin, * Jochen Kächelin[01-10-24 15:19]: >Ich habe mit Samba 1 Verzeichnis an meine WIN98s freigegeben >und möchte nun immer nachts eine Sicherung der Daten >durchführen. > >Ich würde dazu gerne lediglich die bash und einen cronjob verwenden. >Die erzeugten gz's sollten als Bezeichnung immer den Tag der >Sicherung haben. > >Ist so was überhaupt möglich, oder benötigt man dazu ein "richtiges" >Program? Geht schon, ungefähr so: - Pack das Datum in eine Variable: datum=`date $format` - Pack alles ein: tar cf archiv-$datum.tar dings bums Thorsten -- They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety. - Benjamin Franklin
Hi
From: Jochen Kächelin [mailto:jk@wa-p.de]
Ich habe mit Samba 1 Verzeichnis an meine WIN98s freigegeben und möchte nun immer nachts eine Sicherung der Daten durchführen.
Ich würde dazu gerne lediglich die bash und einen cronjob verwenden. Die erzeugten gz's sollten als Bezeichnung immer den Tag der Sicherung haben.
Ist so was überhaupt möglich, oder benötigt man dazu ein "richtiges" Program?
Ist möglich...: --------------cut aus meiner netbackup------------------------ #/bin/sh /bin/date | /usr/bin/elm -s 'NetBackup stated copy smbtar' 'adresse@domain.de' /usr/sbin/sendmail -q smbtar -s IP_des_zu_sichernden_Rechners -x Freigabename -i -u Anwendername -p Password -t /Pfad/zum/sichern/sicherungsname`date "+%w"`.tar tar -czf /dev/st1 /Pfad/zum/sichern /bin/eject /dev/st1 --------------cut aus meiner netbackup------------------------ In der zweiten Zeile wird eine mail erzeugt, die mir mitteilt, das das Backup startet. Die dritte verschickt die Mail ;) Die vierte Zeile (und die 5.) copiert das ganze mit smbtar (bei samba dabei) auf ein Tar. Smbtar verwende ich deswegen, weil ein copy oder normaler Tar auf gemountete Shares dauernd Fehler ala 'datei wurde geändert' brachte, obwohl kein Ar... Um die Zeit am Rechner war. Da ich hier 6 Stände halte (auch auf Platte), wird der Name des tars automatisch mit dem Date erzeugt (sicherungsname1.tar) Die Zeile ist hier getrennt, soll aber in einer Zeile stehen. tar -czf /dev/st1 /Pfad/zum/sichern sichert das ganze auf tape 2 (tape 1 ist /dev/st0) Das /dev/stX kann aber auch /dev/nstX heissen, je nachdem was Du für ein tape hast. /bin/eject /dev/st1 schmeisst das tape am schluss wieder aus dem Laufwerk raus. Das wars. Eingebunden ist das ganze im Cron: ----------------cut---------------------------- 0 21 * * 1,2,3,4,5,6 /sbin/netbackup ----------------cut---------------------------- Daher, es startet um 21.00 Uhr von Montag bis Samstag. Damit sichere ich hier in der Firma jede Nacht ca 140 GB von den Clients und den Servern. Das ganze geht problemlos. Wenn Du noch fragen hast, mail mir. Gruss Ralf
participants (7)
-
Christian Boltz
-
Jochen Kächelin
-
Peter Blancke
-
Ralf Kayser
-
Sven Schiwek
-
Thomas Hofer
-
Thorsten Haude