сервер видеонаблюдения zoneminder

Ответить
ya
^-^
Сообщения: 3375
Зарегистрирован: 16 дек 2021, 19:56

сервер видеонаблюдения zoneminder

Сообщение ya »

сервер видеонаблюдения zoneminder
https://docs.zoneminder.ru/ru/latest/installationguide/debian.html#debian-11-bullseye

Установка компонентов сервера видеонаблюдения:

Код: Выделить всё

apt-get install zoneminder zoneminder-api MySQL-server apache2-mod_php8.3 apache2-cgi-bin php8.3-cgi php8.3-sockets -y
Установим временную зону для MySQL:

mcedit /etc/my.cnf.d/server.cnf

Код: Выделить всё

[mysqld]
default_time_zone = '+03:00'
Запустим MySQL:

Код: Выделить всё

systemctl enable mysqld.service --now
Выполним создание БД и пользователя в консоли mysql (Pass - это пароль пользователя zmuser):

Код: Выделить всё

mysql
CREATE DATABASE zm;
source /usr/share/zoneminder/db/zm_create.sql;
CREATE USER 'zmuser'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Pass';
GRANT ALL PRIVILEGES ON zm.* TO 'zmuser'@'localhost';
FLUSH PRIVILEGES;
exit
Создадим конфиг zoneminder для apache:

mcedit /etc/httpd2/conf/sites-available/zoneminder.conf

Код: Выделить всё

<VirtualHost *:80>
ServerName localhost
# Веб интерфейс ZoneMinder
Alias /zm /usr/share/zoneminder/www
<Directory /usr/share/zoneminder/www>
Options FollowSymLinks
AllowOverride All
Require all granted
php_value short_open_tag 1
DirectoryIndex index.php
</Directory>
# CGI скрипты - все возможные варианты (на случай если не будет отображаться изображение в консоли)
ScriptAlias /cgi-bin /usr/lib/zoneminder/cgi-bin
ScriptAlias /cgi-bin-zm /usr/lib/zoneminder/cgi-bin
ScriptAlias /zm/cgi-bin-zm /usr/lib/zoneminder/cgi-bin
ScriptAlias /zm/cgi-bin /usr/lib/zoneminder/cgi-bin
<Directory "/usr/lib/zoneminder/cgi-bin">
Options +ExecCGI
Require all granted
SetHandler cgi-script
php_value short_open_tag 1
</Directory>
ErrorLog /var/log/httpd2/zm_error.log
CustomLog /var/log/httpd2/zm_access.log combined
</VirtualHost>
Подключим конфиг и модули в apache:

Код: Выделить всё

a2ensite zoneminder
a2enmod mod_php8.3
a2enmod cgi
a2enmod rewrite
a2enmod headers
Установим временную зону для php:

mcedit /etc/php/8.3/apache2-mod_php/php.ini

Код: Выделить всё

date.timezone = "Europe/Moscow"
Подключим модуль расширения socket:

mcedit /etc/php/8.3/cli/php.ini

Код: Выделить всё

extension=sockets.so
Установим права на директории:

Код: Выделить всё

chown -R apache2:_webserver /usr/share/zoneminder/
chown -R apache2:_webserver /var/cache/zoneminder/
chmod -R 755 /var/cache/zoneminder/
Добавим пользователя apache2 в группу video:

Код: Выделить всё

usermod -a -G video apache2
В конфиге zoneminder укажем параметры подключения к БД:

mcedit /etc/zm/zm.conf

Код: Выделить всё

ZM_DB_TYPE=mysql
ZM_DB_HOST=localhost
ZM_DB_NAME=zm
ZM_DB_USER=zmuser
ZM_DB_PASS=Pass
Доработаем сервис zoneminder на случай его краша (при старте ОС он может запуститься быстрее чем БД будет доступна):

Код: Выделить всё

md /etc/systemd/system/zoneminder.service.d/
mcedit /etc/systemd/system/zoneminder.service.d/restart.conf

Код: Выделить всё

[Service]
Restart=always
RestartSec=10
StartLimitIntervalSec=0
Добавим сервисы в автозапуск и перезагрузим сервер:

Код: Выделить всё

systemctl enable --now httpd2 zoneminder
reboot

Подключимся к серверу и добавим камеру (в моём случае это RVi-1NCD2379):

http://АйПиАдресСервера/zm/
Ответить