Software > Linux

backup script -->korrektur lesen + event verbessern

<< < (2/4) > >>

CptHirni:
Nichts zu danken...ich bin aber etwas eingerostet (ich nehme an dieser Stelle mal zurück, dass die zu 'tarenden' Pfade mit "/" enden müssen  :engel: ). Gargamel kennt sich mit Linux besser aus, vielleicht stolpert er hier mal über den Thread ;)
Hab momentan auch kein laufendes Linuxsys hier zum austesten.
Ich würd dir empfehlen nen kleines Sys zusammenzustricken aus irgendwelchen Hardwareresten und da zuerst alles auszuprobieren, bevor du irgendwas am Server machst. Manchmal is man selbst bei einfachen Sachen einfach blind oder denkt sich "kann schon nix schiefgehen"..und dann fängt das Schwitzen an  :D

Die Verzeichnisse /dev /proc /mnt enthalten keine "realen" Daten, in /dev sind die Gerätedateien, /proc ist für den laufenden Kernel, /mnt sind deine mounts. /mnt ginge vielleicht noch, aber spätestens /proc wird dir beim 'taren' Fehler um die Ohren werfen.


--- Zitat ---das das ne ganze reihe von datein sind kann ich selbige im kopf als "variablen" angeben?

--- Ende Zitat ---
Das geht meines Wissens nach nicht. Ich find das rumhantieren mit excludes immer etwas unhandlich...ich würd stattdessen tar nur die Ordner übergeben, die du auch sichern willst, nicht direkt "/".

Quick&dirty Vorschlag:

--- Code: ---#!/bin/sh
# full and incremental backup script
# created 07 February 2000
# Based on a script by Daniel O'Callaghan <danny@freebsd.org>
# and modified by Gerhard Mourani <gmourani@videotron.ca>

#Change the variables below to fit your computer/backup

COMPUTER1=Vserver                                                  # name für monatliches backup
DIR1="/bin /boot /etc /home /lib /opt /root /sbin /usr /var" # verz. für monatliches backup

COMPUTER2=webspace-backup                                    # name für wöchentliches backup
DIR2="/var/www /home"                                            # verz. für wöchentliches backup

BACKUPDIR="/var/ftp/backups"                                    # speicherort für aktuelle backups
OLDBACKUP="/var/ftp/backups/old"                              # speicherort für backups des vormonats


#You should not have to change anything below here

PATH=/usr/local/bin:/usr/bin:/bin
DOW=`date +%a`                    # Day of the week e.g. Mon
DOM=`date +%d`                    # Date of the Month e.g. 27
DM=`date +%d%b`                    # Date and Month e.g. 27Sep


# monthly full backup
if [ $DOM = "1" ]; then
   rm $OLDBACKUP/*.tar
   mv $BACKUPDIR/*.tar $OLDBACKUP
   tar -cf $BACKUPDIR/$COMPUTER1-fullbackup-$DM.tar -X "/var/ftp/backups" $DIR1

fi

# weekly www backup
if [ $DOW = "Mo" ]; then
   tar -cf $BACKUPDIR/$COMPUTER2-$DM.tar $DIR2
fi

--- Ende Code ---

DIR1 müsstest du ggf. noch auf dein System anpassen.

Gargamel:

--- Zitat von: mad1120 am 10. März 2009, 22:13:30 ---das sich beim tar durch den Kommentar -z gleich die Endung ändert, war bisher nicht klar ich dachte tar wäre = tar.

--- Ende Zitat ---


Das kommt afaik daher, dass tar lediglich zum archivieren von Dateien geschrieben worden ist. Tar fasst also nur mehrere Dateien unkomprimiert in einem Archiv zusammen, der .tar-Datei. Wenn man das Archiv auch komprimieren möchte, wird dafür z.B. gzip verwendet. Gzip kann allerdings nur einzelne Dateien packen. Als Dateiendung verwendet man dann üblicherweise .tar.gz oder kurz .tgz. Ist halt so ein Unix-Grundprinzip, dass jedes Programm nur auf eine Aufgabe spezialisiert ist und dass die Programme mit der Shell einfach miteinander verknüpft werden können. Kann gut sein, dass die Option '-z' erst später in Tar mit aufgenommen wurde, damit man nicht immer "tar c QUELLDATEIEN | gzip > komprimiertes-archiv.tar.gz" schreiben muss.

Da bei Unix nicht so viel Wert auf Dateiendungen gelegt wird, kannst du aber die erzeugten Archive benennen wie du willst. Musst nur beim entpacken die richtigen Optionen angeben.


Ansonsten hab ich dem was CptHirni geschrieben hat nichts hinzuzufügen. ;)

mad1120:
cool, also besten dank an euch.

jetzt hab ich noch ne abschliessenden, usw wegen cron...

hab ich das nicht verstanden, das ich ganze nur noch auf 755 chmod"en" muss.
und dann das ganze dann in den /etc/cron.daily ordner schieben muss?
und dann somit das Script jeden tag um 0 uhr gestartet wird.

CptHirni:
Jupp  :thumbup:

Aber es muss nicht um 0 Uhr laufen. Wann die Scripte in .daily abgearbeitet werden ist in der crontab festgelegt.
Wenn du mal 'crontab -l' eingibst siehst du deine aktuelle crontab. In den ersten Zeilen ist festgelegt, wann die Scripte in cron.daily cron.weekly usw aufgerufen werden.
Ich würd daran auch nix ändern, dein Backupscript ist ja nicht darauf angewiesen, obs um 0 Uhr, 2:30Uhr oder 4:15 Uhr oder wann auch immer läuft ;)

mad1120:
grummel hab gerade gesehen das das script nicht so läuft wie es soll.....

ich hab das gute stück am 16.märz per hand laufen lassen --> archiv wurde erstellt

darauf hin hab ich den cron job erstellt,
und nun hab ich gesehen das das script am 23 kein backup erstellt hat. :motz:

mit welchen rechten werden die cron scripte eigentlich per default gestartet? root oder eigeschrägt???
weil wenn es mit eingeschränkten rechten gestartet wird, dann wäre das die fehlerquelle --> keine schreibrechte im backup ordner.

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln