ZoneMinder
Was ist ZoneMinder? ZoneMinder ist eine Software zur Kamera Steuerung bzw Überwachung.
Mit ZoneMinder lassen sich Aufnahmen von diversen Videoquellen erstellen.
Installations Vorbereitung
Es wurde ein Ubuntu 16.04 als System installiert ohne Desktop, als Server.
Mit Tasksel wurde die LAMP Umgebung installiert.
Als erstes wurde die MySQL.cnf angepasst:
nano /etc/mysql/mysql.conf.d/mysqld.cnf
In [mysqld] wurde der Eintrag
sql_mode = NO_ENGINE_SUBSTITUTION
hinzugefügt.
Mit
mysql_secure_installation
wurde die MySQL Installation gesichert und Zugriff von Ausserhalb unterbunden.
Installation ZoneMinder
apt-get install zoneminder php-gd
ZoneMinder mit den entsprechenden PHP Grafikbibliotheken installieren
Die SQL Datei muss angepasst werden da dort ein Passwort für den admin mit angelegt wird , dieses aber nicht der Secure Richtlinie entspricht.
nano /usr/share/zoneminder/db/zm_create.sql
Die Datenbank für ZoneMinder anlegen
mysql -uroot -p < /usr/share/zoneminder/db/zm_create.sql mysql -uroot -p -e "grant all on zm.* to 'zmuser'@localhost identified by 'meinsuperpasswort';
Da das Passwort auch nicht default ist wie von ZoneMinder erwartet muss auch die zm.cfg angepasst werden
nano /etc/zm/zm.cfg mysqladmin -uroot -p reload
Die Recht müssen auf die zm.cfg gesetzt werden
chmod 740 /etc/zm/zm.conf chown root:www-data /etc/zm/zm.conf
Den „Benutzer“ www-data in die Gruppe video aufnehmen
adduser www-data video
Es müssen noch einige Apache Module aktiviert werden
a2enmod cgi a2enconf zoneminder a2enmod rewrite
Die Rechte auf den Zoneminder Ordner anpassen
chown -R www-data:www-data /usr/share/zoneminder/
API Rechte ändern für Zoneminder
nano /etc/apache2/apache2.conf
<Directory /usr/share> AllowOverride All Require all granted </Directory> <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>
AllowOverride ist default auf none
Dienst aktivieren
systemctl enable zoneminder service zoneminder start
Die Zeitzone muss in der php.ini konfiguriert werden:
nano /etc/php/7.0/apache2/php.ini [Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone date.timezone = Europe/Berlin
Abschließend noch den apache neu startet
service apache2 reload
Webansicht
Damit man per Web auch wirklich was sieht muss noch auf dem Server ein Plugin installiert werden
cd /usr/src && wget http://www.andywilcock.com/code/cambozola/cambozola-latest.tar.gz tar -xzvf cambozola-latest.tar.gz cp cambozola-0.936/dist/cambozola.jar /usr/share/zoneminder
http://ip/zm
Nun kann man die Kameras hinzufügen.
Kameras hinzufügen
Unsere Kameras arbeiten per rtsp Stream \
Unter Allgemein muss dazu ffmpeg ausgewählt werden. \
Bei Funktion kann man diverse Einstellungen auswählen , im Bild ist Monitor gewählt was eine reine Live Ansicht bietet.
rtsp://192.168.100.240:554/11/?tcp rtsp://192.168.100.241:554/11/?tcp
Um einen Zeitplan zu erstellen wann nur Monitor oder Aufnahme getätigt werden soll, muss man die Funktion aktivieren bzw deaktivieren für den jeweiligen Betriebszustand.
Ich habe dazu Monitor auf an und Mocord auf disabled für den Status day und umgekehrt für night.
Diesen Zustand kann man so speichern wenn man auf „In Betrieb“ klickt und dort den ist Zustand unter einem neuen Namen speichert.
Da für beide Zustände nun Vorlagen vorhanden sind kann man diese über einen cronjob steuern.
crontab -e 0 7 * * 1-5 /usr/bin/zmpkg.pl day 0 18 * * 1-5 /usr/bin/zmpkg.pl night * * * * 0,6 /usr/bin/zmpkg.pl night
Diese Einstellung sagt aus das die Kameras ab Minute 0 Stunde 7 Tag 1-5(Mo-Fr) den Zustand day haben und das ganze ab 18 Uhr auf night geändert wird. Für Samstag und Sonntag ist die ganze Zeit die Aufnahme aktiv.
Hallo Stefan,
danke für die gute Anleitung. Habe mich gerade einige Zeit durch die Installation von Zoneminder gequält, die ja eigentlich auf der Seite von ZM gut beschrieben ist. Leider fehlte dort der Hinweis, daß man unter „Optionen“, „Pfade“, „PATH_ZMS“ von „/cgi-bin/nph-zms“ auf „/zm/cgi-bin/nph-zms“ ändern muß. ( Ubuntu 16.4, ZM 1.30.0 ). Ich hatte die ganze Zeit kein Bild ohne diese Änderung.
Dein Hinweis mit dem Cron-Job hat mir eine ganze Menge Zeit gespart. Habe schon gesucht, wo man die Aufnahmezeiten eintragen kann. Leider sind deutsche Tutorials noch recht rar.
Es ist immer wieder erstaunlich, welche Perlen an Software frei zur Verfügung gestellt werden. Gerade bei Videoüberwachung ist für den Privatmensch der Preis bei kommerzieller Software ein Ausschlußkriterium. Umso besser, daß ZM hier kostenlos mit noch dazu unbegrenzter Anzahl an Webcams verfügbar ist. Danke nochmal.
Ah jetzt versteh ich das mit dem Pfad 🙂
Ich hatte die Anleitung geschrieben für zm 1.29 , mit dem Update auf 1.30 haben die also nochmal etwas geändert 🙂