[Meine Lösung] Re: Neuste Dateiänderung in einem Verzeichnis
Hallo,
meine Lösung sieht so aus.
Dabei brauche ich gar nicht mehr das Datum der neuesten Dateiänderung in
einem Verzeichnis, sondern nur noch das Ergebnis von find, ob sich in einem
angegebenen Zeitraum eine Datei in dem Verzeichnis (rekursiv) geändert hat.
Dann muß das Archiv neu erstellt werden und hochgeladen werden.
Cadaver funktioniert ohne Paßwort nur mit .netrc
Das ist sicherheitstechnisch vielleicht etwas bedenklich, weil ja auch im
folgenden Skript das Zip-Archiv-Paßwort verdrahtet ist, aber für mich privat
reicht das und auch auf einem Mehrbenutzersystem kann man ja die Dateien nur
für sich lesbar machen.
Dann reicht das, wenn man dem root vertrauen kann ;-).
Danke für alle Hinweise.
Ciao
Peter Schütt
P.S. Einige Umbrüche stimmen nicht.
#!/bin/sh
# Parameter 1: Destination directory (e.g. mediacenter.gmx.net/backup)
# Parameter 2: Directory (relativ preferred)
# Parameter 3: Number of Days to check for changes
PASSWORD=StrenggeheimesPasswortMoeglichstSicherUndMitZahl4
TMP=/tmp
HAS_TO_UNMOUNT=0
# Parameter: Destination directory (e.g. /home/peter/gmx)
function mountDest {
DEST_DIR=$1
echo $DEST_DIR
if [ ! -d $DEST_DIR/lost+found ]; then
mount $DEST_DIR
HAS_TO_UNMOUNT=1
fi
}
# Parameter 1: WebDav-Server with destination directory (e.g.
https://mediacenter.gmx.net/backup)
# Parameter 2: Archiv
function putArchiveToWebDav {
echo "put $2" | cadaver $1
}
# Zips and encrypts directory
# Parameter 1: Relative source directory
# Paremeter 2: Destination directory
function zipDir {
DEST_FILE=$2/`echo $1 | sed s/\\\\//_/g`.zip
echo $DEST_FILE
zip -r -o --password $PASSWORD -9 $DEST_FILE $1
}
if [ "a$3" = "a" ]; then
echo "Usage: savewebdav <destination remove directory> <local directory>
<days for last
change> "
echo "Saves the directory to a remote directory on a webdav server"
exit 0;
fi
FILE_CHANGES=`find "$2" -type f -mtime -$3 -print`
if [ "a$FILE_CHANGES" = "a" ]; then
echo "Nothing changed in $2"
exit 0;
fi
zipDir $2 $TMP
putArchiveToWebDav $1 $DEST_FILE
--
www.pstt.de
Die E-Mail-Adresse funktioniert, kann aber u.U. in Zukunft mal abgeschaltet
werden. Ohne "_remove_this_" wird sie auch in Zukunft noch funktionieren.
Reply to: