Surveillance Station Schnappschüsse 1 x pro Tag in ein Archiv komprimieren/verschieben?

Status
Für weitere Antworten geschlossen.

DS111-User

Benutzer
Mitglied seit
13. Feb 2011
Beiträge
285
Punkte für Reaktionen
14
Punkte
18
Wie kann ich die mit einer Aktionsregel erstellten Schnappschüsse z.B. 1 x pro Tag in ein Archiv "Schnappschüsse 28.07.2017" komprimieren?
Wenn das Archiv erstellt ist, sollen die einzelnen *.jpg gelöscht werden. Schlussendlich sollen nur noch die einzelnen Archive und die *.jpg für den angebrochenen Tag sichtbar sein.
 

DS111-User

Benutzer
Mitglied seit
13. Feb 2011
Beiträge
285
Punkte für Reaktionen
14
Punkte
18
Wenn ich versuche folgenden Befehl in einer SSH-Konsole auszuführen:
Rich (BBCode):
find /volume1/surveillance/\@Snapshot/ -maxdepth 1 -daystart -mtime 1 -iname "*.jpg" -print -exec 7z a /tmp/test.zip {} +
wird zwar ein korrektes und vollständiges Archiv namens "test.zip" im Verzeichnis /tmp erstellt mit allen *.jpg-Dateien mit Datum von gestern, aber am Schluss gibt es immer die folgende Fehlermeldung:
Rich (BBCode):
Scanning

Updating archive /tmp/test.zip

Error:
7-Zip cannot open file
test.zip.tmp
Permission denied

System error:
E_FAIL
Administrator@DS1813Plus:/volume1/surveillance/@Snapshot$

Immerhin bin ich als Administrator angemeldet, wieso also erscheint trotzdem ein "permission denied"?

Wie kann ich diese Unschönheit am Schluss der korrekten Verarbeitung verhindern?


(BTW: Dieser Befehl erstellt erst ein Archiv ohne die einzelnen *.jpg zu löschen. Das mache ich dann am Schluss, wenn alles fehlerfrei funktioniert und ich sicher bin, dass auch wirklich sämtliche passenden *.jpg korrekt im Archiv komprimiert sind).
 

peterhoffmann

Benutzer
Sehr erfahren
Mitglied seit
17. Dez 2014
Beiträge
6.057
Punkte für Reaktionen
1.855
Punkte
254
Bei der Fehlermeldung kann ich nicht weiterhelfen.

Warum überhaupt ein Archiv erstellen? JPGs lassen sich nicht wirklich komprimieren. Ein Verschieben in einen Tagesordner (Benennung nach Datum => 20170730) wäre doch viel schneller, ressourcenschonender und sicherer (defektes Archiv z.B.). Weiterhin hätte es den Vorteil, dass man direkt darauf zugreifen kann ohne wieder zu entpacken.

Onlymy2Cents. ;)
 

DS111-User

Benutzer
Mitglied seit
13. Feb 2011
Beiträge
285
Punkte für Reaktionen
14
Punkte
18
Aus mir unbekannten Gründen funktioniert der obige, einzeilige Befehl leider nur bis ca. 1'800 *.jpg-Dateien. Deshalb habe ich die die folgende backup.sh-Datei im Verzeichnis /volume1/surveillance/\@Snapshot/ geschrieben und mit
Rich (BBCode):
chmod +x backup.sh
ausführbar gemacht:
Rich (BBCode):
Quelle=/volume1/surveillance/\@Snapshot/
Ziel=/volume1/mp3DB/KameraBackup-$(date +%Y-%m-%d).zip
TmpJPGList=TempJPGList.txt

cd /tmp

find $Quelle -maxdepth 1 -daystart -mtime 1 -iname "*.jpg" > $TmpJPGList
7z a -mx9 $Ziel @$TmpJPGList

Durch den Wechsel ins /tmp Verzeichnis erscheint die obige Fehlermeldung nicht mehr und das Archiv wird auch mit 5876 *.jpg Dateien noch korrekt erstellt.
Das Zielverzeichnis /volume1/mp3DB/ ist ein von mir erstelltes Verzeichnis mit Freigabe, auf welches ich von einem Windows-PC aus Zugriff habe. Das Zielverzeichnis kann man selbstverständlich frei wählen, man muss dort einfach Schreibrechte haben.

Wenn man obiges Script nun über den Aufgabenplaner aufruft, wird ein Archiv mit allen *.jpg des Vortages erstellt.
 
Zuletzt bearbeitet:

DS111-User

Benutzer
Mitglied seit
13. Feb 2011
Beiträge
285
Punkte für Reaktionen
14
Punkte
18
Danke für Deine Einwände!
Warum überhaupt ein Archiv erstellen? JPGs lassen sich nicht wirklich komprimieren
Da es mir rund 6'000 JPG pro Tag erstellt, ist eine ständig wachsende Zahl + Datenmenge mit der Zeit nicht mehr wirklich praktisch.
Die Komprimierung* ist in meinem Beipiel 661MB JPG auf dem Datenträger vs 607 MB ZIP-Archiv vs 369 MB 7z-Archiv mit maximaler Kompression, scheint also doch nochmal etwas auszumachen.
Zudem werde ich zukünftig auch die einzelnen JPGs löschen und nur noch die Archive behalten.

. Ein Verschieben in einen Tagesordner (Benennung nach Datum => 20170730) wäre doch viel schneller, ressourcenschonender und sicherer (defektes Archiv z.B.).
Es stört kaum, wenn die Synology nachts mal noch ein paar Minuten lang ein Archiv aus ein paar tausend Tages-JPG erstellt. Schneller wäre Dein Vorschlag sicher, aber es braucht dafür mehr Platz.

Das defekte Archiv ist tatsächlich noch ein offener Punkt. Ich bin deshalb dran, einen "Verify"-Durchgang zu machen bevor ich die JPG tatsächlich lösche.

Wenn das nicht stabil funktioniert könnte ich die JPGs immer noch zuerst in ein HyperBackup einschliessen, bevor ich sie endgültig lösche.

*Falls es jemanden interessiert:
Die niedrigste Komprimierungsoption -mx0 dauert im .7z Format für 5'876 JPGs 36 Sekunden (dabei werden die JPG effektiv nur kopiert). Archivgrösse: 634 MB
mx1 = 495 Sekunden, 589 MB
mx3 = 568 Sekunden, 391 MB
mx5 = 463 Sekunden, 372 MB -> Eine Erklärung, warum diese Variante -mx5 am schnellsten läuft, habe ich leider nicht.
mx7 = 538 Sekunden, 370 MB
mx9 = 660 Sekunden, 369 MB
 
Zuletzt bearbeitet:

peterhoffmann

Benutzer
Sehr erfahren
Mitglied seit
17. Dez 2014
Beiträge
6.057
Punkte für Reaktionen
1.855
Punkte
254
Dann macht es natürlich wieder Sinn.

Testweise habe ich gerade mal probiert 62 JPGs (von Photoshop bearbeitet) mit insgesamt 29MB Gesamtgröße zu zippen, raren und zu 7zen, alles mit höchster Stufe. Bei allen Versuchen blieben es rund 29 MB. Es ist also eine Frage welches Programm die JPGs erstellt hat.
 

DS111-User

Benutzer
Mitglied seit
13. Feb 2011
Beiträge
285
Punkte für Reaktionen
14
Punkte
18
Du hast recht:
Es ist also eine Frage welches Programm die JPGs erstellt hat.
Die Surveillance Station scheint JPG mit einer Kompression zwischen 61 und 81 zu erstellen. Mindestens habe ich diese Werte in den genannten 5'876 Bildern gefunden. Wovon dieser Kompressionsgrad genau abhängig ist, bleibt offen. Verwendet wird aktuell der Lavc56.60.100 Encoder.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat