{"id":7279,"date":"2024-05-04T13:23:37","date_gmt":"2024-05-04T11:23:37","guid":{"rendered":"https:\/\/speefak.spdns.de\/oss_lifestyle\/?p=7279"},"modified":"2026-02-23T15:32:54","modified_gmt":"2026-02-23T14:32:54","slug":"zoneminder-manuelle-bereinigung-von-ereignissen","status":"publish","type":"post","link":"https:\/\/speefak.spdns.de\/oss_lifestyle\/zoneminder-manuelle-bereinigung-von-ereignissen\/","title":{"rendered":"Zoneminder: Manuelle Bereinigung von Ereignissen"},"content":{"rendered":"<p>Angesichts der hohen Aufl\u00f6sungen moderner IP-Kameras kann es vorkommen, das Speichermedien zu 100% belegt werden. Der interne Zoneminder Filter ben\u00f6tigt f\u00fcr Datenbankoperationen allerdings ein wenig freien Speicher auf der Festplatte. Wenn \u00fcberhaupt kein Festplattenspeicher mehr verf\u00fcgbar ist, ist die Datenbank wahrscheinlich ebenfalls eingefroren\/nicht verf\u00fcgbar.<\/p>\n<hr \/>\n<h2>Anzeigen Aller Aufnahmen<\/h2>\n<p>Um alle Aufnahmen von Zoneminder anzuzeigen ist folgender Befehl n\u00f6tig:<\/p>\n<pre class=\"lang:default decode:true \">sudo find \/var\/cache\/zoneminder\/events\/ -mindepth 3 -maxdepth 3 -type d -exec ls -ld {} +<\/pre>\n<p>&nbsp;<\/p>\n<hr \/>\n<h2>Archivierte Ereignisse nicht l\u00f6schen<\/h2>\n<p>Werden Aufnahmen archiviert, sollen diese in der Regel nicht gel\u00f6scht werden. Mit folgendem Befehl werden Archivierte Aufnahmen angezeigt:<\/p>\n<pre class=\"lang:default decode:true\">sudo mysql -N -b -r -e \"select Id from zm.Events where Archived = 1;\"\r\n+-----+\r\n| 280 |\r\n| 284 |\r\n| 386 |\r\n+-----+\r\n<\/pre>\n<p>Alle Aufnahmen au\u00dfer den Archivierten ( .s obere Ausgabe des mysql Befehls ) werden wie folgt aufgelistet:<\/p>\n<pre class=\"lang:default decode:true\">sudo find \/var\/cache\/zoneminder\/events\/ -mindepth 3 -maxdepth 3 -type d ! -name \".280\" ! -name \".284\" ! -name \".386\" -exec ls -ld {} +<\/pre>\n<p>Die Ausgabe enth\u00e4lt zwei wichtige Informationen: die Ereignis-ID und den tats\u00e4chlichen Pfad.<\/p>\n<pre class=\"lang:default decode:true\">\/var\/cache\/zoneminder\/events\/5\/18\/12\/14\/.448512 -&gt; 06\/45\/12<\/pre>\n<p>In diesem Fall ist .448512 der symbolische Link des Ereignisses, der auf die Unterordner 06\/45\/12 verweist. Der Name des symbolischen Links enth\u00e4lt auch die Ereignis-ID (448512). Durch Entfernen des symbolischen Links und Hinzuf\u00fcgen der Unterordner zum Pfad erhalten wir den tats\u00e4chlichen Pfad, in dem die Aufzeichnung gespeichert ist:<\/p>\n<pre class=\"lang:default decode:true\">\/var\/cache\/zoneminder\/events\/5\/18\/12\/14\/06\/45\/12<\/pre>\n<p>&nbsp;<\/p>\n<hr \/>\n<h2>L\u00f6schen der Aufnahme und der Informationen in der Datenbank:<\/h2>\n<p>Nun, da der tats\u00e4chliche Pfad bekannt ist, kann er gel\u00f6scht werden:<\/p>\n<pre class=\"lang:default decode:true\">sudo rm -rf \/var\/cache\/zoneminder\/events\/5\/18\/12\/14\/06\/45\/12<\/pre>\n<p>Und der dazugeh\u00f6rige Link ebenfalls:<\/p>\n<pre class=\"lang:default decode:true \">sudo rm -f \/var\/cache\/zoneminder\/events\/5\/18\/12\/14\/.448512<\/pre>\n<p>Sowie die entsprechenden Tabellen in der Datenbank:<\/p>\n<pre class=\"lang:default decode:true\">sudo mysql&gt; DELETE FROM zm.Events WHERE Id = 448512;\r\nsudo mysql&gt; DELETE FROM zm.Frames WHERE EventId = 448512;\r\nsudo mysql&gt; DELETE FROM zm.Stats WHERE EventId = 448512;\r\n<\/pre>\n<p>&nbsp;<\/p>\n<hr \/>\n<h2>Script zum automatischen L\u00f6schen<\/h2>\n<p>Um nicht jede Aufnahme einzeln, wie in o.g. Schritten f\u00fcr jedes Event, l\u00f6schen zu m\u00fcssen existiert ein <a href=\"https:\/\/raw.githubusercontent.com\/Napsty\/scripts\/master\/zoneminder\/zoneminder-event-cleanup.sh\" target=\"_blank\" rel=\"noopener\">Script auf GitHub<\/a>, das wie folgt heruntergeladen und ausf\u00fchrbar gemacht werden kann:<\/p>\n<pre class=\"lang:default decode:true \">wget https:\/\/www.claudiokuenzler.com\/downloads\/scripts\/zoneminder-event-cleanup.sh\r\nchmod 755 zoneminder-event-cleanup.sh<\/pre>\n<p>Im Scriptheader m\u00fcssen dem System entsprechend einige Anpassungen vorgenommen werden:<\/p>\n<pre class=\"lang:default decode:true\"># User variables\r\nolderthan=2                          # Defines the minimum age in days of the events to be deleted\r\nzmcache=\/var\/cache\/zoneminder\/events # Defines the path where zm stores events\r\nmysqlhost=localhost                  # Defines the MySQL host for the zm database\r\nmysqldb=zm                           # Defines the MySQL database name used by zm\r\nmysqluser=zmuser                     # Defines a MySQL user to connect to the database\r\nmysqlpass=secret                     # Defines the password for the MySQL user<\/pre>\n<p>Das Script dann einfach ausgef\u00fchrt werden:<\/p>\n<pre class=\"lang:default decode:true \">sudo .\/zoneminder-cleanup.sh<\/pre>\n<p>&nbsp;<\/p>\n<hr \/>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-2821 alignleft\" src=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-content\/uploads\/2014\/08\/CC_BY_NC_SA.png\" alt=\"CC_BY_NC_SA\" width=\"65\" height=\"23\" \/><span style=\"font-size: 10pt;\">Speefak <span style=\"font-size: 8pt;\">| <a href=\"https:\/\/www.claudiokuenzler.com\/blog\/814\/how-to-manually-clean-up-delete-zoneminder-events\" target=\"_blank\" rel=\"noopener\">www.claudiokuenzler.com<\/a><br \/>\n<\/span><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Angesichts der hohen Aufl\u00f6sungen moderner IP-Kameras kann es vorkommen, das Speichermedien zu 100% belegt werden. Der interne Zoneminder Filter ben\u00f6tigt f\u00fcr Datenbankoperationen allerdings ein wenig freien Speicher auf der Festplatte. Wenn \u00fcberhaupt kein Festplattenspeicher mehr verf\u00fcgbar ist, ist die Datenbank wahrscheinlich ebenfalls eingefroren\/nicht verf\u00fcgbar. Anzeigen Aller Aufnahmen Um alle Aufnahmen von Zoneminder anzuzeigen ist folgender [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,53,43,96,112],"tags":[],"class_list":["post-7279","post","type-post","status-publish","format-standard","hentry","category-anleitungen","category-scripte","category-sicherheit","category-video-ueberwachung","category-zoneminder"],"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"speefak","author_link":"https:\/\/speefak.spdns.de\/oss_lifestyle\/author\/speefak_oss\/"},"rttpg_comment":0,"rttpg_category":"<a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/anleitungen\/\" rel=\"category tag\">Anleitungen<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/scripte\/\" rel=\"category tag\">Scripte<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/sicherheit\/\" rel=\"category tag\">Sicherheit<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/video-ueberwachung\/\" rel=\"category tag\">Video \u00dcberwachung<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/zoneminder\/\" rel=\"category tag\">Zoneminder<\/a>","rttpg_excerpt":"Angesichts der hohen Aufl\u00f6sungen moderner IP-Kameras kann es vorkommen, das Speichermedien zu 100% belegt werden. Der interne Zoneminder Filter ben\u00f6tigt f\u00fcr Datenbankoperationen allerdings ein wenig freien Speicher auf der Festplatte. Wenn \u00fcberhaupt kein Festplattenspeicher mehr verf\u00fcgbar ist, ist die Datenbank wahrscheinlich ebenfalls eingefroren\/nicht verf\u00fcgbar. Anzeigen Aller Aufnahmen Um alle Aufnahmen von Zoneminder anzuzeigen ist folgender&hellip;","_links":{"self":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/posts\/7279","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/comments?post=7279"}],"version-history":[{"count":0,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/posts\/7279\/revisions"}],"wp:attachment":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/media?parent=7279"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/categories?post=7279"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/tags?post=7279"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}