Linux notes Система відеоспостереження (ZoneMinder

четвер, 16 травня 2013 р.

1. Встановлення ZoneMinder

Встановимо ZoneMinder з репозиторію:# sudo apt-get install zoneminder

Створимо символьне посилання на конфіг Apache2 для ZoneMinder'a:# sudo ln -s /etc/zm/apache.conf /etc/apache2/conf.d/zoneminder.conf

Перезавантажимо Apache2:# sudo /etc/init.d/apache2 force-reloadВідредагуємо змінні ядра:# sudo nano /etc/sysctl.confДля збільшення кількості та обсягуShared Memoryдодаємо:kernel.shmall = 167772160kernel .shmmax =167772160

І перезавантажуємося, якщо ж хочемо побачити ефект відразу:# sudo echo 167772160 > /proc/sys/kernel/shmall# sudo echo 167772160 > /proc/sys/kernel/shmmax# sudo sysctl -p

Логи знаходяться тут:/tmpі тут/var/log/syslog.

2. Встановлення камер

2.1 Підключення камер до мережі

У мене є всього 4 камери: 2D-Link DCS-930(бездротові) та 2Axis 206(провідні).

Виявити камери AXIS в мережі дозволяє їх утиліта: AXIS IP Utility v2 Оскільки я не мав доступу до роутера, тоD-linkкамери я шукав за допомогою утиліти nmap:# sudo nmap 192.168.1.*

D-Linkкамери можна обчислити за таким висновком:Nmap scan report for 192.168.1.110 Host is up (0.0052s latency). Not shown: 997 closed ports PORT STATE SERVICE 21/tcp open ftp 80/tcp open http 443/tcp open https MAC Address: F0:7D:68:02:29:08 (D- Link)

2.2 Налаштування D-Link DCS-930

ПідключимоD-Link'і доkazmawifi.

linux

Вибираємо вкладкуSETUP->Wireless Setup: Тут активуємоwi-fiвстановивши значенняWIRELESSSETTINGSуEnable.Знаходимо потрібний нам вайфай натиснувши на кнопкуSite survey. Не забуваємо ввести пароль, у поліPre-Shared Key, і тиснемоSave Settings.

Тепер нам необхідно створити користувача з-під якого будемо забирати зображення з камер. Переходимо у вкладкуMAINTENANCE:

notes

І додаємо нового користувача ввівши його логін, пароль і натиснувши кнопкуAddу розділіADD USER ACCOUNT. Я додав користувачаuser, на камерахD-Link DCS-930.

2.3 Налаштування Axis 206.

notes

І додаємо користувач user.

3. Додавання камер до Zoneminder.

У вікні додавання камери нас цікавлять перші дві вкладки:GeneralіSource. Заповнюємо вкладкуGeneralдляD-Link DCS-930:

відеоспостереження

Решту залишаємо як є, нас це влаштовує.

Тепер перейдемо до заповнення вкладкиSource: ДляD-Link DCS-930:

zoneminder

ДляAxis 206вкладкаGeneralзаповнюється аналогічним чином, тільки ім'я змініть.

А ось заповнення вкладкиSourceдляAxis 206:Remote Protocol - HTTPRemote Method - SimpleRemote Host Name - user:[email protected]Remote Host Part - 80Remote Host Path - /axis-cgi/mjpg/v > ;Remote Images Colours - 24 біт кольориCapture Width (pixels) - 640Capture Height (pixels) - 480Orientation - Normal

linux

Ось що в нас у результаті виходить:

notes

4. Проблеми та їх вирішення з якими я зіткнувся

[Wed May 15 09:43:56 2013] [error] [client 192.168.1.161] array (\n 0 => \n array (\n 'file' =>'/usr/share/zoneminder/ajax/stream.php',\n 'line' => 55,\n 'function' => 'ajaxError',\n 'args' => \n array (\n 0 => 'socket_sendto( /tmp/zms-741127s.sock ) failed: No such file or directory',\n ),\n), \n 1 => \n array (\n 'file' => '/usr/share/zoneminder/index.php',\n 'line' => 124,\n 'args' => \n array (\n 0 => '/usr/share/zoneminder/ajax/stream.php',\n ), \n 'function' => 'require_once',\n),\n), referer: http://192.168. 1.180/zm/index.php?view=watch&m > Пошукавши з цієї помилки точного рішення знайти не зміг. Але зміг завести картинку з камер.

Редагуємо:# sudo nano /etc/apache2/conf.d/zoneminder.conf

і додаємо в кінець такі рядки:ScriptAlias ​​/cgi-bin/zms "/usr/share/zoneminder/cgi-bin/zms"ScriptAlias ​​/cgi-bin/nph -zms "/usr/share/zoneminder/cgi-bin/nph-zms"

Перезапустимо апач:sudo /etc/init.d/apache2 restartабоsudo service apache2 restart

Можна і не так брутально, а просто змусити апач перечитати конфіги:sudo /etc/init.d/apache2 reloadабоsudo service apache2 reload

Дякую gentoo.ru за це рішення.

4.2. Потрібно змінити розташування зображень із камер.

Змінимо місце розташування фотографій з камер, що знімаються поevent'ам:# sudo mkdir /home/zm- Створимо каталог/home/zm# cd /usr/share/zoneminder- Перейдемо в каталог зZoneMinder# sudo ln -s /home/zm /usr/share/zoneminder/ eventsnew- Створимо символьне посиланняeventsnewна каталог/home/zm

Заходимо в панель управління (http://192.168.1.180/zm) і переходимо на сторінкуOptionsі відкриваємо вкладкуPaths, необхідно змінити значенняDIR_EVENTSнаeventsnew.

4.3. Необхідно зберігати зображення не старше 2 тижнів.

УUse FilterвибираємоPurgeWhenFull(менше треба виправляти, ніж стандартний фільтр) і заповнюємо як на скріншоті:

zoneminder

Знову тиснемо кнопкуSave.

4.4. Не відображаються Event'и у Chrome (Windows) та Chromium (Linux).

notes

УFirefoxнаWindowsтаLinuxвсе відображається коректно.

4.5 Короткі event'и.

система

Тут нас цікавить насамперед такі параметри як:Image Buffer Size (frames)- кількість зображень, що може зберігатися у буфері.Pre Event Image Count- кількість зображень, які необхідно запам'ятовуватиДОподії (Alarm). Значення має бути не більшеImage Buffer Size (frames)/2.Post Event Image Count- кількість зображень, які потрібно запам'ятовуватиПІСЛЯподії (Alarm). Значення може бути будь-яке, але занадто великі значення нам не потрібні, оскільки записуватиметься занадто багато зображень, а також деякі камери відмовлялися працювати при дуже великому значенні. Наприклад камериD-Link DCS-930не хочуть працювати при значенні більше40, а камериAxis 206при значенні більше25>. Але цих значень мені вистачає.

Після виставлення таких параметрів ми можемо радіти діям тривалістю30-60секунд, хоча раніше вони писалися по5-15секунд максимум.