rsync Parameter

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
roli
Beiträge: 3174
Registriert: 10.09.2003 17:39:58

rsync Parameter

Beitrag von roli » 22.01.2006 14:51:40

Hi,

ich habe ein Problem mit folgendem Script:

Code: Alles auswählen

for verz in daten home root usr etc var/lib
do
  echo -e "\nStarte rsync backup fuer \"/$verz\" ..."
  logger "Start rsync backup fuer \"/$verz\" ..."

  rsync -avz /$verz /mnt/usb-disk/arrows/daily.0
done
Ich haette gerne das rsync mir auf der USB-Platte, auf die ich sichere (/mnt/usb-disk/arrows/daily.0), ein Verzeichnis var anlegt, worin dann wiederum lib ligen soll. Das passiert jedoch nicht. lib mit allen Dateien und Unterverzeichnissen liegt im Root der USB-Platte. Wie kann ich das aendern?
Roland


"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"

Hamatoma
Beiträge: 120
Registriert: 10.08.2003 19:30:53
Lizenz eigener Beiträge: GNU Free Documentation License

Re: rsync Parameter

Beitrag von Hamatoma » 23.01.2006 01:34:39

Hi,

mein Vorschlag: das zusammengesetzte Verzeichnis var/lib extra behandeln. Am besten eine Funktion definieren und diese 2 mal aufrufen:

Code: Alles auswählen

# Parameter: Quellverzeichnis Zielverzeichnis
function Save { # geschweifte Klammer auf
  echo -e "\nStarte rsync backup fuer $1"
  logger "Start rsync backup fuer $1"
  mkdir -p $2
  rsync -avz $1 $2
} # Geschweifte Klammer zu
for verz in /daten /home /root /usr /etc
do
 Save $verz  /mnt/usb-disk/arrows/daily.0
done
Save /var/lib   /mnt/usb-disk/arrows/daily.0/var
Leider werden hier keine geschweiften Klammern angezeigt. Habe sie mit Kommentar markiert (umschließen Rumpf der Funktion).

mfg
Hamatoma

Antworten