Difference between revisions of "Zoneminder"
Unnilennium (talk | contribs) |
Unnilennium (talk | contribs) |
||
(15 intermediate revisions by 3 users not shown) | |||
Line 20: | Line 20: | ||
<!-- keep this first element as is, you can add some if needed --> | <!-- keep this first element as is, you can add some if needed --> | ||
{{#smeversion: {{#var:smecontribname}} }} | {{#smeversion: {{#var:smecontribname}} }} | ||
− | |||
==Description== | ==Description== | ||
Line 28: | Line 27: | ||
==Installation== | ==Installation== | ||
− | ==== | + | <tabs container><tab name="For SME 10"> |
− | yum --enablerepo=smecontribs | + | yum --enablerepo=smecontribs,smetest install smeserver-extrarepositories-zmrepo smeserver-extrarepositories-rpmfusion smeserver-extrarepositories-epel |
+ | |||
+ | yum install smeserver-zoneminder zoneminder --enablerepo=zmrepo,smecontribs,epel,rpmfusion | ||
+ | </tab><tab name="For SME 9"> | ||
+ | You can choose to activate one of the php version as long as it is at least >=56 | ||
+ | yum --enablerepo=smecontribs install smeserver-extrarepositories-zmrepo smeserver-extrarepositories-remi-safe smeserver-extrarepositories-rpmfusion smeserver-extrarepositories-epel | ||
signal-event yum-modify | signal-event yum-modify | ||
yum install smeserver-php-scl --enablerepo=smecontribs | yum install smeserver-php-scl --enablerepo=smecontribs | ||
− | config | + | config setprop php54 PhpModule disabled |
− | config | + | config setprop php55 PhpModule disabled |
− | config | + | config setprop php56 PhpModule enabled |
− | config | + | config setprop php70 PhpModule disabled |
− | config | + | config setprop php71 PhpModule disabled |
+ | config setprop php72 PhpModule disabled | ||
+ | config setprop php73 PhpModule disabled | ||
signal-event php-update | signal-event php-update | ||
− | + | From a fresh install it should be that easy: | |
− | yum install smeserver-zoneminder zoneminder --enablerepo=zmrepo,smecontribs | + | yum install smeserver-zoneminder zoneminder --enablerepo=zmrepo,smecontribs |
+ | |||
signal-event zoneminder-update | signal-event zoneminder-update | ||
+ | config set UnsavedChanges no | ||
+ | If you already have few packages depending on ffmpeg, you might need to force the install as zoneminder need a newer ffmpeg. We have built a compatibility package, but this needs two more steps : | ||
+ | wget https://mirror.canada.pialasse.com/releases/9/smetest/x86_64/RPMS/ffmpeg-compat_0.10.16-0.10.16-2.el6.sme.x86_64.rpm | ||
+ | yum install ffmpeg-compat_0.10.16-0.10.16-2.el6.sme.x86_64.rpm --enablerepo=smecontribs,zmrepo | ||
+ | yum install smeserver-zoneminder zoneminder --enablerepo=zmrepo,smecontribs | ||
+ | rpm -ivh <nowiki>https://mirror.canada.pialasse.com/releases/9/ffmpeg-compat_0.10.16-0.10.16-2.el6.sme.x86_64.rpm</nowiki> | ||
+ | signal-event zoneminder-update | ||
config set UnsavedChanges no | config set UnsavedChanges no | ||
+ | </tab> | ||
+ | </tabs> | ||
== NFR Acces Zoneminder via sub domain== | == NFR Acces Zoneminder via sub domain== | ||
Line 57: | Line 73: | ||
signal-event domain-create cctv.myserver.com | signal-event domain-create cctv.myserver.com | ||
− | + | Now you can reach your zoneminder portal at https://cctv.myserver.com | |
− | |||
− | |||
− | |||
− | |||
− | |||
==Uninstall== | ==Uninstall== | ||
Line 84: | Line 95: | ||
- Mac/Windows/Linux [https://github.com/pliablepixels/zmNinja/releases Github] | - Mac/Windows/Linux [https://github.com/pliablepixels/zmNinja/releases Github] | ||
− | + | == Bugs == | |
Please raise bugs under the SME-Contribs section in [http://bugs.contribs.org/enter_bug.cgi bugzilla] | Please raise bugs under the SME-Contribs section in [http://bugs.contribs.org/enter_bug.cgi bugzilla] | ||
and select the {{#var:smecontribname}} component or use {{BugzillaFileBug|product=SME%20Contribs|component={{#var:smecontribname}}|title=this link}} | and select the {{#var:smecontribname}} component or use {{BugzillaFileBug|product=SME%20Contribs|component={{#var:smecontribname}}|title=this link}} | ||
Line 90: | Line 101: | ||
Below is an overview of the current issues for this contrib:{{#bugzilla:columns=id,product,version,status,summary|sort=id|order=desc|component={{#var:smecontribname}} |noresultsmessage=No open bugs found.}} | Below is an overview of the current issues for this contrib:{{#bugzilla:columns=id,product,version,status,summary|sort=id|order=desc|component={{#var:smecontribname}} |noresultsmessage=No open bugs found.}} | ||
− | ===Changelog | + | == Know issues and NFR == |
+ | |||
+ | '''to use usb camera would need''' : | ||
+ | |||
+ | usermod -a -G video www | ||
+ | chmod 777 /dev/video0 | ||
+ | |||
+ | # or find an alternative, that was what helped me here modprobe uvcvideo | ||
+ | # if this is the module for your cam <nowiki>https://forums.zoneminder.com/viewtopic.php?t=23361</nowiki> | ||
+ | '''syslog error when using vlclib:'''<syntaxhighlight lang="bash"> | ||
+ | ALSA lib confmisc.c:550:(snd_determine_driver) could not open control for card 0ALSA lib conf.c:3463:(_snd_config_evaluate) function snd_func_card_driver returned error: Permission denied | ||
+ | </syntaxhighlight>see https://forums.gentoo.org/viewtopic-t-319220-highlight-alsa+permission.html<syntaxhighlight lang="bash"> | ||
+ | usermod -a -G audio www | ||
+ | </syntaxhighlight>also create and add in /etc/udev/rules.d/50-udev.rules<syntaxhighlight lang="bash"> | ||
+ | # alsa devices | ||
+ | SUBSYSTEM="sound", GROUP="audio" | ||
+ | KERNEL="controlC[0-9]*", NAME="snd/%k", GROUP="audio" | ||
+ | KERNEL="hw[CD0-9]*", NAME="snd/%k", GROUP="audio" | ||
+ | KERNEL="pcm[CD0-9cp]*", NAME="snd/%k", GROUP="audio" | ||
+ | KERNEL="midiC[D0-9]*", NAME="snd/%k", GROUP="audio" | ||
+ | KERNEL="timer", NAME="snd/%k", GROUP="audio" | ||
+ | KERNEL="seq", NAME="snd/%k", GROUP="audio" | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | '''NFR :''' | ||
+ | * set php to 56 if default is not at list 56 | ||
+ | * force https and redirect | ||
+ | * allow to set a http host and if set, remove access using /zm | ||
+ | * set zoneminder and httpd template to : | ||
+ | ** auth agaisnt http OPT_USE_AUTH = true + AUTH_TYPE = remote + AUTH_RELAY disabled (or stream will fail) | ||
+ | ** no zm auth but httpd auth | ||
+ | ** no auth at all - | ||
+ | ** only httpd auth for admin | ||
+ | ** httpd auth for a list of user - | ||
+ | * httpd auth for a group "zm group" - | ||
+ | * set LANG_DEFAULT depending on system language : fr_fr if fr_* or en_uk if en_* | ||
+ | * set email configs like EMAIL_ADDRESS | ||
+ | |||
+ | ==Changelog== | ||
Only released version in smecontrib are listed here. | Only released version in smecontrib are listed here. | ||
Line 98: | Line 147: | ||
<!-- list of category you want to see this page in --> | <!-- list of category you want to see this page in --> | ||
[[Category: Contrib]] | [[Category: Contrib]] | ||
− | + | [[Category: Video]] | |
<!-- Please keep there the template revision number as is --> | <!-- Please keep there the template revision number as is --> |
Latest revision as of 04:28, 25 March 2023
zoneminder logo | |
Maintainer | Unnilennium |
---|---|
Url | https://www.zoneminder.com |
Category | |
Tags | cctv, zoneminder, zm, video, ip camera |
Version
Description
ZoneMinder is intended for use in single or multi-camera video security applications, including commercial or home CCTV, theft prevention and child, family member or home monitoring and other domestic care scenarios such as nanny cam installations. It supports capture, analysis, recording, and monitoring of video data coming from one or more video or network cameras attached to a Linux system. ZoneMinder also support web and semi-automatic control of Pan/Tilt/Zoom cameras using a variety of protocols. It is suitable for use as a DIY home video security system and for commercial or professional video security and surveillance. It can also be integrated into a home automation system via X.10 or other protocols.
This contrib is for IP Camera's only.
Installation
yum --enablerepo=smecontribs,smetest install smeserver-extrarepositories-zmrepo smeserver-extrarepositories-rpmfusion smeserver-extrarepositories-epel
yum install smeserver-zoneminder zoneminder --enablerepo=zmrepo,smecontribs,epel,rpmfusion
You can choose to activate one of the php version as long as it is at least >=56
yum --enablerepo=smecontribs install smeserver-extrarepositories-zmrepo smeserver-extrarepositories-remi-safe smeserver-extrarepositories-rpmfusion smeserver-extrarepositories-epel signal-event yum-modify yum install smeserver-php-scl --enablerepo=smecontribs config setprop php54 PhpModule disabled config setprop php55 PhpModule disabled config setprop php56 PhpModule enabled config setprop php70 PhpModule disabled config setprop php71 PhpModule disabled config setprop php72 PhpModule disabled config setprop php73 PhpModule disabled signal-event php-update
From a fresh install it should be that easy:
yum install smeserver-zoneminder zoneminder --enablerepo=zmrepo,smecontribs
signal-event zoneminder-update config set UnsavedChanges no
If you already have few packages depending on ffmpeg, you might need to force the install as zoneminder need a newer ffmpeg. We have built a compatibility package, but this needs two more steps :
wget https://mirror.canada.pialasse.com/releases/9/smetest/x86_64/RPMS/ffmpeg-compat_0.10.16-0.10.16-2.el6.sme.x86_64.rpm yum install ffmpeg-compat_0.10.16-0.10.16-2.el6.sme.x86_64.rpm --enablerepo=smecontribs,zmrepo yum install smeserver-zoneminder zoneminder --enablerepo=zmrepo,smecontribs rpm -ivh https://mirror.canada.pialasse.com/releases/9/ffmpeg-compat_0.10.16-0.10.16-2.el6.sme.x86_64.rpm signal-event zoneminder-update config set UnsavedChanges no
NFR Acces Zoneminder via sub domain
Instead of accessing the Zoneminder portal at http://myserver.com/zm, it is possible to change this to e.g. https://cctv.myserver.com. For this the easiest and comfortable way is to use the webapps-common contrib.
Install the webapps-common contrib according to the Contrib page. Then (as per example for https://cctv.myserver.com) issue the following as root:
db domains set cctv.myserver.com domain Description "CCTV" Content Primary \ Nameservers internet TemplatePath WebAppVirtualHost \ DocumentRoot /usr/share/zoneminder/www RequireSSL enabled signal-event domain-create cctv.myserver.com
Now you can reach your zoneminder portal at https://cctv.myserver.com
Uninstall
service zoneminder stop yum --setopt=tsflags=noscripts remove zoneminder smeserver-zoneminder
do not forget to remove the domain you created if you did
signal-event domain-delete cctv.myserver.com signal-event webapps-update
Now to cleanup everything you may want to perform the usual post-upgrade and reboot events. Apart from the php-scl and webapps contribs, all that is left is the MySQL database zm and the logfiles. It's up to you what to do with them.
ZoneMinder clients
By default, ZoneMinder can be accessed via the webinterface. There are also 3rd party client applications available.
zmNinja, a beautiful fast and efficient client application (freely available on Github) DEMO
- Android - Play Store
- iOS - iTunes
- Mac/Windows/Linux Github
Bugs
Please raise bugs under the SME-Contribs section in bugzilla and select the smeserver-zoneminder component or use this link
Below is an overview of the current issues for this contrib:
ID | Product | Version | Status | Summary (3 tasks) ⇒ |
---|---|---|---|---|
12373 | SME Contribs | 10.0 | CONFIRMED | /etc/e-smith/events/actions/zoneminder prevents system to start after reboot in bootstrap console |
12219 | SME Contribs | 10.0 | RESOLVED | Unable to install Zoneminder |
11226 | SME Contribs | 10alpha | RESOLVED | Initial Import in SME 10 [smeserver-zoneminder] |
Know issues and NFR
to use usb camera would need :
usermod -a -G video www chmod 777 /dev/video0
- or find an alternative, that was what helped me here modprobe uvcvideo
- if this is the module for your cam https://forums.zoneminder.com/viewtopic.php?t=23361
syslog error when using vlclib:
ALSA lib confmisc.c:550:(snd_determine_driver) could not open control for card 0ALSA lib conf.c:3463:(_snd_config_evaluate) function snd_func_card_driver returned error: Permission denied
see https://forums.gentoo.org/viewtopic-t-319220-highlight-alsa+permission.html
usermod -a -G audio www
also create and add in /etc/udev/rules.d/50-udev.rules
# alsa devices
SUBSYSTEM="sound", GROUP="audio"
KERNEL="controlC[0-9]*", NAME="snd/%k", GROUP="audio"
KERNEL="hw[CD0-9]*", NAME="snd/%k", GROUP="audio"
KERNEL="pcm[CD0-9cp]*", NAME="snd/%k", GROUP="audio"
KERNEL="midiC[D0-9]*", NAME="snd/%k", GROUP="audio"
KERNEL="timer", NAME="snd/%k", GROUP="audio"
KERNEL="seq", NAME="snd/%k", GROUP="audio"
NFR :
- set php to 56 if default is not at list 56
- force https and redirect
- allow to set a http host and if set, remove access using /zm
- set zoneminder and httpd template to :
- auth agaisnt http OPT_USE_AUTH = true + AUTH_TYPE = remote + AUTH_RELAY disabled (or stream will fail)
- no zm auth but httpd auth
- no auth at all -
- only httpd auth for admin
- httpd auth for a list of user -
- httpd auth for a group "zm group" -
- set LANG_DEFAULT depending on system language : fr_fr if fr_* or en_uk if en_*
- set email configs like EMAIL_ADDRESS
Changelog
Only released version in smecontrib are listed here.