summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2018-03-14 21:23:58 +0100
committerErich Eckner <git@eckner.net>2018-03-14 21:23:58 +0100
commit7582aa65fb1043904fb1c9fa617c14adda313efa (patch)
tree4d8e0d9e2d11c02d4d2cc0a2715748806dd03d24
parentd606a5914af37de85e1b4826ef95e8c4839429cd (diff)
downloadcopyPhotos-7582aa65fb1043904fb1c9fa617c14adda313efa.tar.xz
auch auf usb-Platte kopieren
-rwxr-xr-xcopyPhotos44
1 files changed, 39 insertions, 5 deletions
diff --git a/copyPhotos b/copyPhotos
index 647f3f9..395336d 100755
--- a/copyPhotos
+++ b/copyPhotos
@@ -8,13 +8,16 @@ verwendung()
{
echo 'copyPhotos [-i]'
echo ' -i übergehe bereits vorhandene Dateien ohne zu meckern'
- echo ' -n übergehe Kopieren zum Fileserver'
+ echo ' -f übergehe Kopieren zum Fileserver'
+ echo ' -z übergehe Kopieren zum Zweitbackup'
exit 1
}
zielVerzeichnis="/home/erich/Bilder"
endHost="fileserver"
endZielVerzeichnis="Bilder/Fotos"
+zweitHost='stefanie@aries'
+zweitZielVerzeichnis='/tmp/mount.dc3b07aa-52e5-4dab-9cd6-9354c116e94c/Bilder/Fotos'
publicHost="ecknernet:backstage/downloadarea"
unset daten
@@ -24,8 +27,12 @@ declare -A jahre
ignoriere=false
fileserver=true
+stefanie=true
-eval set -- "$(getopt -o in -n "$(basename "$0")" -- "$@" || echo verwendung)"
+eval set -- "$(
+ getopt -o ifz -n "$(basename "$0")" -- "$@" || \
+ echo verwendung
+)"
while true
do
@@ -33,15 +40,18 @@ do
-i)
ignoriere=true
;;
- -n)
+ -f)
fileserver=false
;;
+ -z)
+ stefanie=false
+ ;;
--)
shift
break
;;
*)
- echo 'FEHLER: Ich verstehe Parameter "'$1'" nicht.'
+ echo 'FEHLER: Ich verstehe Parameter "'"$1"'" nicht.'
verwendung
;;
esac
@@ -81,6 +91,8 @@ summen="$(
done
)"
+echo 'Danke, der Photoapparat kann wieder ab.' >&2
+
cd "${zielVerzeichnis}"
echo "${summen}" | \
@@ -97,13 +109,31 @@ fi
[ ${pingErg} -gt 1 ] && exit ${pingErg}
+if ${stefanie}
+then
+ ping -c1 "${zweitHost#*@}" > /dev/null || \
+ pingErg=$?
+else
+ pingErg=1
+fi
+
+[ ${pingErg} -gt 1 ] && exit ${pingErg}
+
if [ ${pingErg} -eq 0 ]
then
tar -czf - "${!jahre[@]}" --xform='s@^\([0-9]\{4\}\)_@\1/\1_@' | \
ssh "${endHost}" '
cd "'"${endZielVerzeichnis}"'" && \
- tar -xzkf - &&
+ tar -xzvkf - &&
+ sync
+ ' || \
+ ${ignoriere}
+
+ tar -czf - "${!jahre[@]}" --xform='s@^\([0-9]\{4\}\)_@\1/\1_@' | \
+ ssh "${zweitHost}" '
+ cd "'"${zweitZielVerzeichnis}"'" && \
+ tar -xzvkf - &&
sync
' || \
${ignoriere}
@@ -112,6 +142,10 @@ then
sed 's@^\([0-9a-f]\+ \+\)\([0-9]\{4\}\)_@\1'"${endZielVerzeichnis}"'/\2/\2_@' | \
ssh "${endHost}" 'sha512sum -c'
+ echo "${summen}" | \
+ sed 's@^\([0-9a-f]\+ \+\)\([0-9]\{4\}\)_@\1'"${zweitZielVerzeichnis}"'/\2/\2_@' | \
+ ssh "${zweitHost}" 'sha512sum -c'
+
fi
while true