Difference between revisions of "Ubuntu Server 19.10 Zoneminder 1.33.x"
Line 50: | Line 50: | ||
Now installing zoneminder by "sudo apt-get install zoneminder" will not work because of missing dependencies (as of 05/01/2019) | Now installing zoneminder by "sudo apt-get install zoneminder" will not work because of missing dependencies (as of 05/01/2019) | ||
== Installing libmp4v2-2 == | == Installing libmp4v2-2 == | ||
Download and compile libmp4v2-2: | '''Download and compile libmp4v2-2:''' | ||
wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/mp4v2/mp4v2-2.0.0.tar.bz2 | wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/mp4v2/mp4v2-2.0.0.tar.bz2 | ||
Line 66: | Line 68: | ||
Install libmp4v2-2 as debian package: | '''Install libmp4v2-2 as debian package:''' | ||
sudo checkinstall | sudo checkinstall | ||
Follow the instructions on the screen. | Follow the instructions on the screen. | ||
Change the description values as following: '' | Change the description values as following: Name=''libmp4v2-2'', Version=''2.0'', Provides=''libmp4v2-2'' | ||
== Repacking zoneminder deb-package == | |||
We have to repack the zoneminder deb-package to fix the dependencies issue (libx264-155). | We have to repack the zoneminder deb-package to fix the dependencies issue (libx264-155). | ||
Download the current deb-package: | Download the current deb-package: | ||
Line 94: | Line 101: | ||
Install Zoneminder: | |||
== Install Zoneminder: == | |||
sudo gdebi zoneminder_1.32.3-disco_repacked_amd64.deb | sudo gdebi zoneminder_1.32.3-disco_repacked_amd64.deb | ||
Other missing dependencies will automaticely be installed | |||
== Post-installation procedures == | |||
'''Create the Database''' | |||
The database is not created automatically. Create the database with: | The database is not created automatically. Create the database with: | ||
Line 108: | Line 125: | ||
Fix permissions: | '''Fix permissions:''' | ||
chmod 740 /etc/zm/zm.conf | chmod 740 /etc/zm/zm.conf | ||
Line 115: | Line 132: | ||
Enable Apache features: | '''Enable Apache features:''' | ||
sudo a2enmod cgi | sudo a2enmod cgi | ||
Line 135: | Line 152: | ||
Add timezone to PHP: | '''Add timezone to PHP:''' | ||
sudo nano /etc/php/7.2/apache2/php.ini | sudo nano /etc/php/7.2/apache2/php.ini | ||
Line 154: | Line 171: | ||
sudo service zoneminder restart | sudo service zoneminder restart | ||
Zoneminder should work! Open Zoneminder in a web browser (http://server-ip/zm). | |||
'''Zoneminder should work!''' Open Zoneminder in a web browser (http://server-ip/zm). |
Revision as of 10:36, 2 May 2019
Zoneminder 1.32 made it into the "official" Ubuntu 19.04 repositories. Unfortunately the MP4 recording and playback does not work with the shipped version as there are missing libraries (libmp4v2-2). So events can only be saved in jpeg-frames, video recordings do not happen. [State: 01 MAY 2019]
These instructions will show how to install Zoneminder 1.32-3 from the iconnor ppa with mp4 support to use video recordings.
You will need to install LAMP then secure MySQL before installing Zoneminder.
Preparations
Install needed packages:
sudo apt-get install x264 x265 build-essential checkinstall gdebi
Secure MySQL or Mariadb:
mysql_secure_installation
Add entry into my.cnf:
nano /etc/mysql/my.cnf
Add the following to the end of the file:
[mysqld] sql_mode = NO_ENGINE_SUBSTITUTION
CTRL + o CTRL + x
Restart MySQL:
service mysql restart
Install the official repository for the current stable version 1.32:
sudo add-apt-repository ppa:iconnor/zoneminder-1.32
Now installing zoneminder by "sudo apt-get install zoneminder" will not work because of missing dependencies (as of 05/01/2019)
Installing libmp4v2-2
Download and compile libmp4v2-2:
wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/mp4v2/mp4v2-2.0.0.tar.bz2 tar xf mp4v2-2.0.0.tar.bz2 cd mp4v2-2.0.0/ mkdir build/ && cd build/ ../configure CXXFLAGS='-fpermissive' CFLAGS='-fpermissive' make
Don't leave this folder.
Install libmp4v2-2 as debian package:
sudo checkinstall
Follow the instructions on the screen. Change the description values as following: Name=libmp4v2-2, Version=2.0, Provides=libmp4v2-2
Repacking zoneminder deb-package
We have to repack the zoneminder deb-package to fix the dependencies issue (libx264-155).
Download the current deb-package:
wget https://launchpad.net/~iconnor/+archive/ubuntu/zoneminder-1.32/+files/zoneminder_1.32.3-disco_amd64.deb
Extract the deb-package:
ar x zoneminder_1.32.3-disco_amd64.deb tar xf control.tar.xz
Rewrite the required dependencies:
nano control
search for "libx264-155" and move it after "libx264-152 | ".
Repack the deb-package:
tar c {post,pre}{inst,rm} md5sums control | gzip -c > control.tar.gz ar rcs zoneminder_1.32.3-disco_repacked_amd64.deb debian-binary control.tar.gz data.tar.xz
Install Zoneminder:
sudo gdebi zoneminder_1.32.3-disco_repacked_amd64.deb
Other missing dependencies will automaticely be installed
Post-installation procedures
Create the Database
The database is not created automatically. Create the database with:
mysql -uroot -p < /usr/share/zoneminder/db/zm_create.sql mysql -uroot -p -e "grant all on zm.* to 'zmuser'@localhost identified by 'zmpass';"
mysqladmin -uroot -p reload
Fix permissions:
chmod 740 /etc/zm/zm.conf chown root:www-data /etc/zm/zm.conf chown -R www-data:www-data /usr/share/zoneminder/
Enable Apache features:
sudo a2enmod cgi sudo a2enmod rewrite sudo a2enconf zoneminder sudo service apache2 restart
Add user www-data to group video, for accessing local cameras:
sudo adduser www-data video sudo usermod -a -G video www-data
Enable Zoneminder service:
systemctl enable zoneminder.service
Add timezone to PHP:
sudo nano /etc/php/7.2/apache2/php.ini
Search for [Date] (Ctrl + w then type Date and press Enter) and make changes as follows for your time zone
[Date]
- Defines the default timezone used by the date functions
- http://php.net/date.timezone
date.timezone = America/New_York
CTRL +o Enter to save CTRL +x to exit
Restart Apache and zoneminder
sudo service apache2 reload sudo service zoneminder restart
Zoneminder should work! Open Zoneminder in a web browser (http://server-ip/zm).