nachdem mir hier im Forum bereits so toll weitergeholfen wurde dachte ich mir direkt, dass man den Bogen noch weiter spannen könnte
Folgendes Script steht in Kombination mit einem Raspberry Pi 3 (raspbian) und einem 3.5"-TFT im Mittelpunkt:
Kurzform: Check ob was gemountet ist -> kopiere die dateien per rsync -> umount -> fertig.
Code: Alles auswählen
#!/bin/bash
# If the script detects the existence of both the source and destination disks
# then the contents ot the GOPRO folder is synchronised with files on the BACKUPDISK folder.
# Ensure that the Partition Label's on all your devices are set accordingly.
## Make sure the script isn't already running from a previous disk connection
################################################################################
if [ `ps -e | grep -c $(basename $0)` -gt 2 ]; then exit 0; fi
################################################################################
sleeptime=5
logfile=/opt/bin/syncjob.log
source=/media/backuo
destination=/media/cardreader
SourceCounter=20
DestinationCounter=20
############################################################
# Test if the Source disk is connected.
until [ $SourceCounter -lt 1 ]
do
echo $SourceCounter >> $logfile
if [ -d $source ]
then
echo "== Source Disk Found - Look for the Destination Disk ==" >>$logfile
date >> $logfile
let SourceCounter=0
# Test if the Destination disk is connected.
until [ $DestinationCounter -lt 1 ]
do
echo $DestinationCounter >> $logfile
if [ -d $destination ]
then
echo "== Destination Disk Found - Backup Started ==" >> $logfile
rsync -avzh $source $destination >> $logfile 2>&1
echo "Backup Complete" >> $logfile
echo "Unmount the USB disks" >> $logfile
umount $source >> $logfile 2>&1
umount $destination >> $logfile
date >> $logfile
echo "== Copy Complete ==" >> $logfile
let DestinationCounter=0
else
echo "== Looking for the Destination Disk ==" >>$logfile
sleep $sleeptime
fi
let DestinationCounter=DestinationCounter-1
done
else
echo "== Looking for the Source Disk ==" >>$logfile
sleep $sleeptime
fi
let SourceCounter=SourceCounter-1
done
echo "Script Complete" >> $logfile
echo "===============" >> $logfile
Folgende Ideen habe ich derzeit und habe mir eine Liste zum "abhaken" gemacht.
1. Eine Prüfung, ob alle Dateien tatsächlich übertragen wurden.
- Wie kann man das am geschicktesten lösen?
- Wie kann man es so machen, dass sich der Pi bei einem Fehler bemerkbar macht (z,B, für eine Minute seine LED blinken lassen)
2. Umbenennen der Ordner mit Informationen aus den exif-Informationen (Datum, Kamera, Uhrzeit).
- Wie soll man das am besten Lösen?
- Bedarf es zusätzlicher Pakete die installiert werden sollten?
3. Informationen & Zwischenstände
- könnte man mit Notify-send machen, allerdings lässt sich die Anzeigedauer der Blasen nicht anpassen (-t ist wirkungslos...it's not a bug, it's a feature)
- gibt es gute Alternativen zu notify?
Ich freue mich auf Ideen und Vorschläge!