ZM is a complicated piece of software, as we all know, and it is a hard task to get it set up properly, particularly as both it and FreeNAS are subject to constant change. Threads that worked on the last plugin version, 1.32.3, no longer apply. I thought it would be a good idea to amalgamate all relevant threads to a central index. Given my limited ability with both FreeNAS and ZoneMinder, I would be willing to contribute by maintaining such an exercise as a way of contributing to the forum.
There are many options that are recommended in the docs and should be implemented, such as;
Use of tmps (RAM) instead of tmp to reduce disk activity,
Use of lower camera resolution and resolution in motion detection mode but switch to highest when motion detected and recording occurs,
Save videos outside the jail,
and whatever comes up as we proceed.
I will also start threads on these so we, hopefully, find the best way to achieve these for all.
ZM is a complicated piece of software, as we all know, and it is a hard task to get it set up properly, particularly as both it and FreeNAS are subject to constant change. Threads that worked on the last plugin version, 1.32.3, no longer apply. I thought it would be a good idea to amalgamate all relevant threads to a central index. Given my limited ability with both FreeNAS and ZoneMinder, I would be willing to contribute by maintaining such an exercise as a way of contributing to the forum.
There are many options that are recommended in the docs and should be implemented, such as;
Use of tmps (RAM) instead of tmp to reduce disk activity,
Use of lower camera resolution and resolution in motion detection mode but switch to highest when motion detected and recording occurs,
Save videos outside the jail,
and whatever comes up as we proceed.
I will also start threads on these so we, hopefully, find the best way to achieve these for all.
@nikinp,
Not yet but I will in the next few days.
I don't know whether you have ever replaced gutters on an old house but, take it from me, it isn't easy or quick. As winter approaches, I must make use of the fine days.
Thanks for voting too. There have been 158 views and only two votes, disappointing.
Long time listener first time caller- very interested in this thread. I have zoneminder plugin installed on a FreeNAS system that is 12 drives, 1 pool of two RAID z2 vdevs.
I have joined one camera with Mocord and I can see my NAS's blinking lights going crazy- I can imagine this is a very non-optimum setup. I can imagine the recordings are being striped and hashed constantly and would it be better practice to have a vdev and pool dedicated to just zoneminder recorderings?
In zmNinja app (android version for me) you need to change Setting "path to cgi-bin" from "zoneminderIP/zm/cgi-bin" to "zoneminderIP/cgi-bin".
This solves the live monitor feed - (Montage) not been displayed.
For latest FreeNAS plugin installation 1.34.9
How does one this do? I do not see it in the Zoneminder documentation.
Edit: found this... still haven't implemented but looks like there are two ways to approach this.
I just had to RMA two SSD's because they died after 10 months of Zoneminder video data processing taking place on them. This resulted in more than 400TiB of write activity. First thing that came to mind was to move the memory map file used for this to my HDD pool but to be honest, no storage...
Can someone recommend best disk practices?
Zoneminder is my first and only jail.
I only had 1 pool prior to setting this up.
I added a single drive to my machine and made it the default for all jails. Zoneminder automatically started storing records to the drive without any need to play with fstab or storage mounts.
I'm getting warnings from FreeNAS about the pool being too full, but since it's meant for loop recording I just dismiss it.
Is this approach bad? (Is it wasting RAM/CPU cycles that could be going to my actual ZFS pool)
The only other approach I can think of is: install Zoneminder on my main pool, and then format the new drive as EXT4 and mount it as the root for Zoneminder.
Anyone experiencing high CPU usage after install Zoneminder?
Zoneminder's console only reports 5-10% usage with 3x 5MP cameras running. FreeNAS system load never goes above 10%, however CPU usage is pinned at 100% and my temps in the high 70s.
CPU: Xeon E3-1220 (I'm using the stock cooler, so maybe it's time to reapply the thermal paste?)
Another noob here, I've had FREENAS up and running for about 9 Months and ventured into zoneminder about 2 Months ago, I soon trashed a fresh SSD (2 weeks) which I've swapped out for a mechanical drive - but I've only bought myself a bit of time.
But I still have not been able to figure out how to move to TMPFS, in the thread that Roy360 points to I get stuck at "enforce_statfs=0 " I'm on truenas core and that setting doesn't exist, so I tried adding it to sysctl.conf but it doesn't seem to have any effect - so right now I don't have a solution and I've run out of talent.
Very in favour of some best practices knowledge being pooled!
Can someone recommend best disk practices?
Zoneminder is my first and only jail.
I only had 1 pool prior to setting this up.
I added a single drive to my machine and made it the default for all jails. Zoneminder automatically started storing records to the drive without any need to play with fstab or storage mounts.
I'm getting warnings from FreeNAS about the pool being too full, but since it's meant for loop recording I just dismiss it.
Is this approach bad? (Is it wasting RAM/CPU cycles that could be going to my actual ZFS pool)
The only other approach I can think of is: install Zoneminder on my main pool, and then format the new drive as EXT4 and mount it as the root for Zoneminder.
Anyone experiencing high CPU usage after install Zoneminder?
Zoneminder's console only reports 5-10% usage with 3x 5MP cameras running. FreeNAS system load never goes above 10%, however CPU usage is pinned at 100% and my temps in the high 70s.
CPU: Xeon E3-1220 (I'm using the stock cooler, so maybe it's time to reapply the thermal paste?)
Are you doing any analysis on the capture? - i.e. motion detection, is it set-up as MOCORD or RECORD?
Are you transcoding before writing to disk - i.e. what is your setting for video writer on the storage tab of your monitors?
Are you doing any analysis on the capture? - i.e. motion detection, is it set-up as MOCORD or RECORD?
Are you transcoding before writing to disk - i.e. what is your setting for video writer on the storage tab of your monitors?
I am using MoCord on 3x 5MP Cameras. Recording at 15fps.
I am using h254 passthrough with video writer.
CPU is now pegged at 60% across all four cores according to FreeNAS. Goes up to 80% during events. (Temps unfortunately are also pegged around the 70-80 degree range, so there's probably some throttling happening)
Regarding your tmpfs question, just find the fstab of your Zoneminder install and add something similar to this at the end:
Sorry this probably should not be in this thread - deserves a separate one. Not surprised on your cpu with 3 cameras doing motion detection @5mp 15fps, you are asking a lot from the cpu. Can you not use one of your three cameras in motion detection mode to add events to the others? Or use a low res/fps stream to do the MoCord to identify events?
My one camera has 2 streams - stream 1 is high resolution 15 fps, stream 2 is setup as 6 fps and 800x600 (or similar).
Stream 2 does the motion detection which triggers stream 1 to record.
As for tmpfs - I am ok to follow a dummies guide but beyond that I am stuffed - I wouldn't know where to inject the code you suggest.
After upgrading FreeNAS 11.2 -> 11.3 and trying to update the ZoneMinder plugin from the FreeNAS UI, my ZM setup was borked. I couldn't find any solutions, so here's how I fixed it...
Symptoms:
1) ZM Web UI reports: 502 Bad Gateway
2) Errors in /var/log/messages: root: /etc/rc: WARNING: failed to start php_fpm
3) php-fpm service is not running; starting it manually reveals this error message: Undefined symbol "setproctitle_fast@FBSD_1.5"
Upgrade ZM database schema (from 1.32.x to 1.34.21):
root@zoneminder:~ # service zoneminder stop
root@zoneminder:~ # zmupdate.pl
Original symptoms fixed; new symptoms:
4) Errors in /var/log/messages: ERR [SQL-ERR dbFetchOne no result, statement was 'SHOW variables WHERE variable_name='max_connections'']
5) Errors in /var/log/messages: ERR [SQL-ERR 'SQLSTATE[42S02]: Base table or view not found: 1146 Table 'performance_schema.session_status' doesn't exist', ...]
6) Errors in /var/log/messages: ERR [ZoneMinder is not configured properly: php's date.timezone +0000 does not match the system timezone -0800! Please check Options->System->Timezone.]
Check database integrity and update MySQL schema:
root@zoneminder:~ # mysqlcheck -p`cat /root/dbpassword` --all-databases
root@zoneminder:~ # mysql_upgrade -u root -p`cat /root/dbpassword`
Set correct timezone in ZoneMinder > Options > System > TIMEZONE. I had never done this since it was working fine before.
Just did a ZM plugin update. New version is v1.36.5
As usual, after the plugin update you will notice that ZM stops working, even after jail restart.
If you check your log, the message is there.
zoneminder zmpkg[36752]: FAT [Version mismatch, system is version 1.36.5, database is 1.34.21, please run zmupdate.pl to update.]
# iocage console zoneminder
# service zoneminder stop
# zmupdate.pl
Initiating database upgrade to version 1.36.5 from version 1.34.21
.....
Database upgrade to version 1.36.5 successful.
# service zoneminder start
And your jail works again.
P.S. This version makes me very uncortable. It slowed down performance, some errors appear, camera analysis slowed. I should better stayed on 1.34. I about to snapshot to downgrade....
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.