Hallo,
weil ich kein großer Skriptmeister bin, möchte ich euch bitten, ein Blick auf folgende Skript "zu werfen".
Wenn arpwatch + Rsync läuft und SeLinux nicht stört sollte das laufen, oder?
Wenn das alles Mist ist... sagt es mir bitte auch.
Zur Frage ob ich ein Lehrer/Schüler bin: weder noch. Ich bin ein Elternteil eines Kindes.
################################################################## # cat ring-rsync.sh
#!/bin/sh
# Mo 13 Dez 2010 23:14:52 CET # Ring-Rsync
# Wird nach Testphase auf allen Linux-PC im Cronjob installiert. # Rsyncd + Arpwatch soll auf allen Linux-PC laufen
# Nur 8 Verbindungen zu lassen count=`netstat -tn | grep ":873" | grep "VER" | wc -l` [ $count -gt 8 ] && exit
clear
[ -d /var/www/html/Bilder/Klasse1 ] || mkdir -p /var/www/html/Bilder/Klasse1 [ -d /var/www/html/Bilder/Klasse2 ] || mkdir -p /var/www/html/Bilder/Klasse2 [ -d /var/www/html/Bilder/Klasse3 ] || mkdir -p /var/www/html/Bilder/Klasse3 [ -d /var/www/html/Bilder/Klasse4 ] || mkdir -p /var/www/html/Bilder/Klasse4 [ -d /var/www/html/Bilder/Klasse5 ] || mkdir -p /var/www/html/Bilder/Klasse5 [ -d /var/www/html/Bilder/Klasse6 ] || mkdir -p /var/www/html/Bilder/Klasse6 [ -d /var/www/html/Bilder/Klasse7 ] || mkdir -p /var/www/html/Bilder/Klasse7 [ -d /var/www/html/Bilder/Klasse8 ] || mkdir -p /var/www/html/Bilder/Klasse8
tac /var/log/messages | awk '/new station/ {print $3" "$8}' array1=(`tac /var/log/messages | awk '/new station/ {print $3" "$8}'`)
rsync -4av --partial --bwlimit=100 ${array1[1]}:/var/www/html/Bilder/Klasse1 /var/www/html/Bilder/ & rsync -4av --partial --bwlimit=100 ${array1[3]}:/var/www/html/Bilder/Klasse2 /var/www/html/Bilder/ & rsync -4av --partial --bwlimit=100 ${array1[5]}:/var/www/html/Bilder/Klasse3 /var/www/html/Bilder/ & rsync -4av --partial --bwlimit=100 ${array1[7]}:/var/www/html/Bilder/Klasse4 /var/www/html/Bilder/ & rsync -4av --partial --bwlimit=100 ${array1[9]}:/var/www/html/Bilder/Klasse5 /var/www/html/Bilder/ & rsync -4av --partial --bwlimit=100 ${array1[11]}:/var/www/html/Bilder/Klasse6 /var/www/html/Bilder/ & rsync -4av --partial --bwlimit=100 ${array1[13]}:/var/www/html/Bilder/Klasse7 /var/www/html/Bilder/ & rsync -4av --partial --bwlimit=100 ${array1[14]}:/var/www/html/Bilder/Klasse8 /var/www/html/Bilder/ &
#######################################################################
Evtl. sollte ich mir lftp oder wget ansehen, wenn diese eine Bandbreitenbeschränkung besitzen?
Zum Thema löschen: ... da muss ich mir noch was einfallen lassen. Mögliche "Löschtag": erste Woche nach den Ferien.
Schöne Woche und vielen Dank an alle die mir helfen Wolfgang
Am Mon, 13 Dec 2010 23:41:36 +0100 schrieb Wolfgang centos@arcor.de:
weil ich kein großer Skriptmeister bin, möchte ich euch bitten, ein Blick auf folgende Skript "zu werfen".
[..]
################################################################## # cat ring-rsync.sh
Gehe mal davon aus, dass Dir Dein Email-Client ein paar Zeilenumbrüche reingehauen hat. Macht die Sache ebenso unleserlich wie die weitgehend fehlende Kommentierung. Nur mal so als Tip am Rande.
[ -d /var/www/html/Bilder/Klasse1 ] || mkdir -p /var/www/html/Bilder/Klasse1
[..]
Scheint mir redundant - rsync ist durchaus in der Lage, fehlende Unterverzeichnisse selbst anzulegen, solange nur das angegebene Zielverzeichnis (also hier ...html/Bilder/) vorhanden ist
tac /var/log/messages | awk '/new station/ {print $3" "$8}' array1=(`tac /var/log/messages | awk '/new station/ {print $3" "$8}'`)
rsync -4av --partial --bwlimit=100 ${array1[1]}:/var/www/html/Bilder/Klasse1 /var/www/html/Bilder/ &
[..]
rsync -4av --partial --bwlimit=100 ${array1[14]}:/var/www/html/Bilder/Klasse8 /var/www/html/Bilder/ &
Weiß nicht, ob ich Deine Intention richtig deute, aber offenbar soll Klasse8 erst synchronisiert werden, wenn seit Systemstart mind. 8 Stationen neu hinzugekommen sind, oder?
Ich nehme an, Dir ist an einer Lastverteilung gelegen, aber so führt es bei den ersten 8 gestarteten PCs zu einem unvollständigen Ergebnis und eine Garantie, das jemals alle Verzeichnisse "Klasse*" auf alle PCs synchron sind, hast Du insbesondere dann nicht, wenn die Einschaltreihenfolge der Rechner immer gleich ist. Zumindest sollte am Ende der rsyncs ein rsync über das komplette /var/www/html/Bilder zu einem der PCs stehen.
Je nach Konfiguration des Filesystems brauchst Du eventuell noch Optionen wie -xAX
Evtl. sollte ich mir lftp oder wget ansehen, wenn diese eine Bandbreitenbeschränkung besitzen?
Bei wget gibt es --limit-rate und mit --mirror kommt man in solchen Fällen schon recht weit. ACL oder Extended-Attributes bleiben allerdings auf der Strecke.
lftp dito.
Zum Thema löschen: ... da muss ich mir noch was einfallen lassen. Mögliche "Löschtag": erste Woche nach den Ferien.
Die Frage ist eher, ob Du willst, dass die (versehentliche) Löschung einer Datei auf den anderen PCs nachvollzogen wird. Ebenso, ob die Änderung einer Datei nachvollzogen werden soll. Oder ob nur neue Dateinamen synchronisiert werden sollen.
arpwatch war mir übrigens neu. Interessantes Tool.
Gruß, Tobias.