動体検出としてはmotion一番有名だと思っているが、
今回は外部トリガー(例えば、焦電センサーとかSlackからの要求とか)に対応したく
ZoneMinderを使用してみた。
・motion
導入事例が多い、外部トリガーには対応していない?
・ ZoneMinder (github)
導入事例がmotionに比べて少ない、設定項目が多く、プログラム自体も巨大?
外部トリガーが出来るっぽい
ただし、ZoneMinderはwebサーバーにapacheが必要みたい。
なんとなく軽量にしてみたく、nginxを使用するように変更。
1.インストール
sudo apt-get install zoneminder
sudo apt-get install nginx-extras fcgiwrap php7.0-fpm
sudo apt-get install mariadb-server
2.セットアップ
(1) nginx
/etc/nginx/sites-available/default の変更
・
cgi-bin
とfastcgi_paramsのところ
アクセス権付与し、再起動
chown www-data:www-data /etc/zm/zm.conf
systemctl restart nginx
(2)mariadb
※ユーザー・パスワードは適宜変更、 /etc/zm/zm.confと合わせる
create user 'zmuser'@'localhost' identified by 'zmpass';
grant all on zm .* to zmuser;
create database zm;
mysql -u zmuser -p zm < /usr/share/zoneminder/db/zm_create.sql
(3)php
/etc/php/7.0/fpm/php.ini の変更
「date.timezone = "Asia/Tokyo"」
再起動
/etc/init.d/php7.0-fpm restart
(4)カメラへのアクセス権付与
usermod -aG video www-data
※要再起動
(5)その他
/etc/sysctl.confを変更
sysctl -p
8/30 追記
ここに設定方法があった。
使用しているNanoPi NEOは256MBだから半分の128MBにした
kernel.shmall = 32768
kernel.shmmax = 134217728
ipcs -l 実行結果は以下の通り
------ Messages Limits --------
max queues system wide = 989
max size of message (bytes) = 8192
default max size of queue (bytes) = 16384
------ Shared Memory Limits --------
max number of segments = 4096
max seg size (kbytes) = 131072 = 128MB
max total shared memory (kbytes) = 131072 = 128MB
min seg size (bytes) = 1
------ Semaphore Limits --------
max number of arrays = 128
max semaphores per array = 250
max semaphores system wide = 32000
max ops per semop call = 32
semaphore max value = 32767
(6)webページにアクセス
http://[NanoPiNeoのIPアドレス]/zoneminder/index.php
設定 > Paths > PATH_ZMSを変更
/zoneminder/cgi-bin/nph-zms
3.映像確認
こんな感じ
手順まとめると大したことなかったけど、
もろもろ1週間位かかっているOrz
最後に自動起動するようにしておく
systemctl enable zoneminder
systemctl start zoneminder
あと、ディスク容量が逼迫した場合に古い記録から消す設定
How can I stop ZoneMinder filling up my disk?
http://zoneminder.readthedocs.io/en/latest/faq.html
次は検知時の映像をslackに投稿するぞー!
参考
・https://chiralsoftware.com/idea/nginx-ubuntu-and-zoneminder
0 件のコメント:
コメントを投稿