rsync - Verständnisfrage

24/07/2008 - 13:36 von Werner Flamme | Report spam
Hallo,

ich darf auf einem remote Server (nicht von mir verwaltet) Daten für
jeweils 10 Tage aufbewahren. Die Schnittstelle, um Daten zu übergeben,
ist rsync.

Zuerst: die eigentliche Übergabe klappt :-) Und zwar, obwohl ich rsync
nur für tar-Archive nutzen kann, weil der rsync-Dàmon nicht mit
root-Rechten làuft und mir daher die Dateibesitzer kaputtmacht :-(

Aber: die Begrenzung auf 10 Tage macht mir Kummer. Ich erstelle ein
leeres Verzeichnis und synce es (und lösche damit remote alles) - dabei
soll aber eine Anzahl von Dateien, die in einer Liste stehen, nicht
gelöscht werden.

Ich habe es mit

rsync -rv --delete --include-from="$INCFROM" "${EMPTYDIR}/" "$RSYNCTARGET"

versucht. $INCFROM ist ein Dateiname, die Datei enthàlt
+ */
+ meine_datei_1.tar.bz2
+ meine_datei_2.tar
...
- *
für die Dateien letzten 10 Tage.

$EMPTYDIR ist ein frisch erstelltes und geleertes /tmp/empty,
$RSYNCTARGET ist user@remotehost::mymodule/hostname

Meine Frage ist: wie kann ich remote löschen und nur die in "$INCFROM"
stehenden Dateien übrig lassen? Mein Weg scheint ja der falsche zu sein :-(

Gruß
Werner

Werner Flamme, Abt. WKDV
Helmholtz-Zentrum für Umweltforschung GmbH - UFZ
Permoserstr. 15 - 04318 Leipzig
Tel.: (0341) 235-1921 - Fax (0341) 235-451921
http://www.ufz.de - eMail: werner.flamme@ufz.de
 

Lesen sie die antworten

#1 Fr
24/07/2008 - 16:40 | Warnen spam
Werner Flamme schrieb:
Hallo,

ich darf auf einem remote Server (nicht von mir verwaltet) Daten für
jeweils 10 Tage aufbewahren. Die Schnittstelle, um Daten zu übergeben,
ist rsync.

Zuerst: die eigentliche Übergabe klappt :-) Und zwar, obwohl ich rsync
nur für tar-Archive nutzen kann, weil der rsync-Dàmon nicht mit
root-Rechten làuft und mir daher die Dateibesitzer kaputtmacht :-(

Aber: die Begrenzung auf 10 Tage macht mir Kummer. Ich erstelle ein
leeres Verzeichnis und synce es (und lösche damit remote alles) - dabei
soll aber eine Anzahl von Dateien, die in einer Liste stehen, nicht
gelöscht werden.

Ich habe es mit

rsync -rv --delete --include-from="$INCFROM" "${EMPTYDIR}/" "$RSYNCTARGET"

versucht. $INCFROM ist ein Dateiname, die Datei enthàlt



"touch"e lokal die Dateinamen die du auf dem Server behalten willst
und nutze dann die Option "--exclude".

Gruß,
Frank

Ähnliche fragen