Hallo,
ich habe nach den diversen udev Beiträgen von meigrafd meinen Raspi A+, der ein paar Temperatursensoren abfragen soll, konfiguriert.
Also
1. udev Regel erzeugt
2. /bin/usbmount.sh erzeugt
#!/bin/bash
# /etc/udev/rules.d/90-usb-storage.rules
MountTo=/media/usb
ACTION=$1
DEVICE=$2
if [ "$ACTION" = "mount" ]; then
[ ! -d $MountTo ] && mkdir -p $MountTo
/bin/mount $DEVICE $MountTo
/usr/bin/logger mounted $DEVICE to $MountTo
#rrdtool dump /home/pi/Temperatur/temperature.rrd
/home/pi/Temperatur/doDump.sh
/usr/bin/logger dump finished
#cp /home/pi/Temperatur/temperature.xml /media/usb/temperature.xml
elif [ "$ACTION" = "umount" ]; then
/bin/umount -f $DEVICE
fi
exit 0
Alles anzeigen
3. die doDump.sh soll aus der RoundRobin Database einen Dump auf den eingesteckten USB schreiben.
Das funktioniert leider nur händisch (./doDump.sh als user pi), beim automatischen Ablauf bleibt der Schreibprozess bei 44MB hängen (für Tage), obwohl die Datei 50MB hat.
Ich habe diverse USB-Sticks probiert, ich weiss jetzt echt nicht, was der Unterschied zwischen dem direkten Aufruf und dem automatischen Ablauf sein könnte.
Es werden auch keine Fehler angezeigt.
Gibt es da noch irgendeinen Fallstrick? Oder eine Methode, wie man es besser machen könnte?
doDump.sh:
#!/bin/bash
rrdtool dump /home/pi/Temperatur/temperature.rrd /home/pi/Temperatur/temperature.xml
/usr/bin/logger temperature.xml written
NOW=$(date +"%d-%m-%Y_%H%M")
ACTION=$(sudo cp -f /home/pi/Temperatur/temperature.xml /media/usb/temperature$NOW.xml 2> /media/usb/fehler.txt)
/usr/bin/logger temperature.xml copied $ACTION
rm -f temperature.xml
/usr/bin/logger temperature.xml removed
sudo umount /media/usb
/usr/bin/logger media unmounted
Alles anzeigen
Gruß
Christoph