No voy a entrar en definiciones de que es y para que sirve zoneminder, para eso puedes ir a la pagina principal o buscar en otros sitios; Lo que haremos en este pequeño escrito es ver la instalación y configuración del mismo, asà que manos a la obra.
[Nota de actualización a v1.29.0]
En el proceso de actualización nos va a dar errores nuevamente con los sockets de apache, el error es como el siguiente:
web_php[19063]: ERR [socket_sendto( /var/lib/zoneminder/sock/zms-329947s.sock ) failed: No such file or directory]
A lo cual debemos modificar nuestro zoneminder de la siguiente forma:
1) cambios en la interfaz web en el menĆŗ "Opciones->Rutas" en el campo "PATH_ZMS" y cambiar el valor a "/zoneminder/cgi-bin/zms"
[Nota de actualización a v1.29.0]
En el proceso de actualización nos va a dar errores nuevamente con los sockets de apache, el error es como el siguiente:
web_php[19063]: ERR [socket_sendto( /var/lib/zoneminder/sock/zms-329947s.sock ) failed: No such file or directory]
A lo cual debemos modificar nuestro zoneminder de la siguiente forma:
1) cambios en la interfaz web en el menĆŗ "Opciones->Rutas" en el campo "PATH_ZMS" y cambiar el valor a "/zoneminder/cgi-bin/zms"
2) El segundo cambio que debemos realizar es a nivel de la configuración del virtualhost de apache, en /etc/httpd/conf.d/zoneminder.conf en la linea
ScriptAlias /cgi-bin-zm "/usr/libexec/zoneminder/cgi-bin"
debemos modificarla de la siguiente forma:
ScriptAlias /zoneminder/cgi-bin "/usr/libexec/zoneminder/cgi-bin"
Reiniamos zoneminder y apache y con esto ya deberĆan tener funcionando nuevamente el streaming por el ambiente web
Ref: https://forums.zoneminder.com/viewtopic.php?f=34&t=24265&p=92469#p92469
ScriptAlias /cgi-bin-zm "/usr/libexec/zoneminder/cgi-bin"
debemos modificarla de la siguiente forma:
ScriptAlias /zoneminder/cgi-bin "/usr/libexec/zoneminder/cgi-bin"
Reiniamos zoneminder y apache y con esto ya deberĆan tener funcionando nuevamente el streaming por el ambiente web
Ref: https://forums.zoneminder.com/viewtopic.php?f=34&t=24265&p=92469#p92469
1 Verificar el soporte
Lo primero que debemos tener en cuenta al momento de configurar zoneminder es el dispositivo de captura a usar y ver si esta soportada o al menos hay pruebas con el mismo, esto se puede verificar directamente en la pagina de zoneminder en donde ademas nos indican los ajustes que se le deben hacer a las cƔmaras.
2 Instalación
Una vez se haya verificado el soporte procedemos a la instalación, tenemos dos métodos para la instalación si bien lo podemos hacer a través de las fuentes, lo mas cómodo para la actualización son los repositorios; por lo cual vamos a utilizar uno en particular el cual nos ofrece las ultimas versiones. En este enlace estÔn las instrucciones de como instalarlo.
2.1 Instalar repositorio y software base
Una vez instalado el repositorio se instala zoneminder y la base de datos mariadb el cual es un clon de mysql.
yum install zoneminder mariadb-server
2.2 Configuración de la base de datos
Ahora es necesario configurar la base de datos y el usuario en mariadb(mysql)
Lo primero que haremos serƔ definir una contraseƱa al usuario root de la base de datos esto se hace de la siguiente forma:
2.2.1 Configuración de la contraseña del usuario root
mysqladmin -u root password 'mirootpass'
2.2.2 Ingresar a mariadb
mysql -u root -p
Enter password:
2.2.3 crear la base de datos
MariaDB [(none)]> create database zm;
2.2.4 Crear usuario y permisos
grant all on zm.* to zm@localhost identified by 'mizmpass';
Con esto ya tenemos creado el usuario y sus respectivos permisos, ahora debemos cargar la base de datos bƔsica para que zoneminder inicie.
2.2.5 Cargar datos iniciales a la base de datos
Primero vamos al directorio en donde esta el script para inicializar la base de datos:
cd /usr/share/zoneminder/db/
Ahora cargaremos los datos a la base de datos de zoneminder:
mysql -u zm -p zm < zm_create.sql
Con esto ya se debe poder iniciar el servicio de zoneminder, tener en cuenta que la base de datos debe estar activa.
systemctl enable zoneminder.service
systemctl start zoneminder.service
2.2.6 Ajustes adicionales apache
Hay una particularidad con los scripts cgi de zoneminder y fedora, por lo cual hay que modificar la configuración de apache para que funcione correctamente, esto se hace editando el siguiente archivo:
vi /etc/httpd/conf/httpd.conf
Seguidamente buscamos la siguiente linea “# ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"”
Con esta modificación terminamos la modificación de apache y procedemos a la configuración.
3 Configuración de zoneminder
3.1 Acceder a la administración
Con el servicio iniciado es hora de acceder a la configuración ingresando la ip en donde se instaló el servicio: http://127.0.0.1/zm
Como se puede observar se permite acceder directamente a la consola sin ningún tipo de autenticación lo cual se debe modificar ademas del idioma, a continuación veremos como modificar estos valores y agregar las cÔmaras y demÔs.
3.2 Activar autenticación y cambio de idioma
Hacemos click en el menĆŗ “options” y nos desplegĆ” las opciones.
Guardamos los cambios y nos exige el reinicio de zoneminder
systemctl restart zoneminder.service
Ahora cuando se vuelve a intentar ingresar nos exige autenticarnos, el usuario y contraseƱa es “admin”.
3.3 Agregar una cƔmara
En la interfaz principal hacemos click en el botón “agregar nuevo monitor” lo cual nos despliega el siguiente menĆŗ.
A continuación la descripción de los campos:
Nombre: nombre descriptivo del monitor o como se va a identificar la camara.
Tipo de origen: como su nombre lo dice es como se va a acceder el dispositivo, si es esta conectado directamente al pc deberĆa ser local, en caso que sea una camara ip serĆa remoto o ffmpeg; o depende de las instrucciones que se den en la wiki en donde se especifica como se deben ajustar estos valores.
Función: en este caso se deberĆa colocar en “modec”, el cual solo graba cuando se detecta movimiento, en caso de querer solo el streaming se deberĆa colocar en “monitor”, en caso de querer grabar solo lapsos de tiempo especĆficos se deberĆa colocar en “record”, por utlimo se tiene la opción “mocord” la cual grabarĆ” continuamente.
Linked monitors: en esta opción se deberĆa seleccionar las cĆ”maras que se deberĆan activar en caso que en este monitor se presente una alarma, esto es particularmente Ćŗtil cuando se esta monitoreando un pasillo o espacios los cuales tengan una sola entrada.
MÔximos FPS: esto es útil cuando se tiene una cÔmara potente y un pc con poco rendimiento, lo que se hace es limitar el flujo de fotogramas desde la cÔmara y procesar solo la cantidad necesaria.
Un monitor configurado en esta pestaƱa quedarĆa de la siguiente forma, para una cĆ”mara que esta recibiendo un flujo rtsp; en este caso no hay monitores enlazados.
Ahora veremos la pestaƱa en donde se especifica el origen del dispositivo.
En este espacio es altamente recomendable consultar el hardware soportado ya que de allà tomaremos las instrucciones de configuración de cada dispositivo en particular, en el caso particular para una cÔmara TL-SC3130 tendremos las siguientes configuraciones para capturar el flujo rtsp.
3.4 Borrar las capturas antiguas
Uno de los puntos mas importantes y que son poco claros es el hecho de borrar la información que ya no es útil o que sencillamente es necesario liberar ese espacio en el disco, aun asà la herramienta con la que cuenta para tal fin es muy versÔtil y podemos jugar muchos valores a la vez, la opción por la que debemos ingresar es por filtros.

Una vez dentro de filtro veremos algo como lo siguiente:
Uno de los puntos mas importantes y que son poco claros es el hecho de borrar la información que ya no es útil o que sencillamente es necesario liberar ese espacio en el disco, aun asà la herramienta con la que cuenta para tal fin es muy versÔtil y podemos jugar muchos valores a la vez, la opción por la que debemos ingresar es por filtros.
Una vez dentro de filtro veremos algo como lo siguiente:
Ahora para crear un nuevo filtro y borrar los videos que sean mayores a 4 dĆas, se deben seleccionar por “fecha”, “menor que” y escribir tal cual “-4 days”, seguidamente en las opciones a ejecutar se seleccionar “borrar todas las coincidencias”.
Ahora se guarda y sin olvidar de marcar la opción “ejecutar filtro en segundo plano” lo cual ejecutara dicho filtro periódicamente.
Con esto se terminarĆa una instalación bĆ”sica de zonemider, no sobra mencionar los foros de zoneminder ya que son de mucha ayuda y cuentan con una comunidad muy activa.
Nota: se debe tener selinux desactivado ya que los módulos existentes no son totalmente compatibles para el correcto desempeño.
1 comentario:
Hola, el articulo esta muy claro. Me encuentro con un problema que no se como solucionar. Cada vex que me tengo que conectar al servicio debo hacer esto: docker stop Zoneminder
docker start Zoneminder
docker restart Zoneminder
Sino el programa no funciona. Se me corta la luz, el ordenador se enciende pero no puedo monitorear las camaras hasta que no vuelva a repetir esos pasos.
Cual es la solucion?
Publicar un comentario