Automatisch Daten kopieren auf USB nach einstecken

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Mueller.D
User
Beiträge: 33
Registriert: Freitag 13. Januar 2017, 10:04

Hallo Leute,

ich hab aktuell ein kleines Projekt.
Kurz gesagt mach ich eine Art Wild Kamera mit dem Rasp Pi.

Die Bilder die gemacht werden, werden in Bilder abgespeichert.

Szenario:
Ich will zur Kamera hin laufen, einen USB reinstecken, eine rauchen und dann denn USB Stick wieder entfernen.
In der Zeit, in der ich eine rauche, sollen die Daten von Bilder automatisch nach dem einstecken auf den USB kopiert werden.
Nach dem Kopieren, sollen die Daten wieder auf dem Rasp Pi gelöscht werden, damit wieder Speicher darauf ist.
Der Ordner in der die Bilder sind ist immer der Selbe und der USB ist auch immer der Gleiche.

Wer hat einen Plan? Ich bin offen für "fast" alles :D.
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

das Stichwort heißt: udev-Regel. Damit kannst du eine Aktion auf dem Pi (davon ausgehend, dass darauf ein Linux läuft) auslösen - wie den Start eines Skripts - wenn der USB-Stick eingesteckt wird.

Das Abziehen ohne richtiges Aushängen ist riskant, weil Linux standardmäßig einen Schreibpuffer im RAM verwendet. Um sicher zu gehen, dass alles direkt geschrieben wird, solltest du diesen Puffer deaktivieren.

Des Weiteren solltest du, solange dein Skript läuft, eine LED oder so leuchten lassen, damit du weißt, dass dein Skript läuft. Sonst könnte es ja sein, wenn du schnell rauchst oder gar vernünftigerweise mal zum Nichtraucher wirst, du den Stick abziehst, wenn dein Skript noch kopiert.

Gruß, noisefloor
narpfel
User
Beiträge: 645
Registriert: Freitag 20. Oktober 2017, 16:10

Eventuell macht es auch Sinn, am Ende des Kopiervorgangs ein `umount` einzubauen, um sicherzustellen, dass alles richtig geschrieben wurde.
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

... oder den `sync` Befehl im Linux-Terminal aufzurufen (was bei `umount` wohl automatisch passiert). Das Restrisiko ist aber nachwievor, dass das Synchronisieren der Daten dann X Sekunden dauert und man während dessen den Stick ab zieht.

Gruß, noisefloor
narpfel
User
Beiträge: 645
Registriert: Freitag 20. Oktober 2017, 16:10

Dafür leuchtet die LED ja weiter, während das `umount` läuft. 😉
Mueller.D
User
Beiträge: 33
Registriert: Freitag 13. Januar 2017, 10:04

Danke für eure Hilfe, das mit der UDEV Regel hat mir geholfen.
Antworten