Ubuntu Server 19.04 Zoneminder 1.32.3
While this procedure still works a version with full support including MP4 can be found here: https://wiki.zoneminder.com/Ubuntu_Server_19.04_Zoneminder_1.32.3_(with_mp4_support)
Ubuntu Server 19.04 with Zoneminder 1.32.2
29MAR19 This was done with Ubuntu 19.04 Beta which contains Zoneminder 1.32.3. This is a preliminary procedure and may not work as changes are made to the release.
Note-30MAR19 - The MP4 recording and playback does not work as there are missing libraries. If you install this switch to saving jpeg's.
Install Ubuntu Server from the Ubuntu Server Live install.
Note: If you want to remove the cloud services see: https://nucco.org/2018/05/ubuntu-18-04-chronicles-removing-cloud-init.html
My install did not allow the time zone to be set in the install. To set the time zone:
nano /etc/timezone
Change the UTC to your local area and time zone such as America/New_York
Ctrl+o Enter to save
CTRL+x to exit
Install ntp and ntpdate
apt install ntp ntpdate
Copy your zoneinfo file as shown. Use your time zone:
cp /usr/share/zoneinfo/America/New_York /etc/localtime
Optional: to disable auto updates edit:
nano /etc/apt/apt.conf.d/20auto-upgrades
Change the "1" to "0"
Ctrl+o Enter to save
CTRL+x to exit
Restart your server.
Install Apache2, Mariadb and PHP (I use Mariadb because of some password length issues with the newer version of MySQL)
apt install apache2 php mariadb-server php-mysql libapache2-mod-php7.2
Next secure Mariadb server by entering requested information.
mysql_secure_installation
Install Zoneminder
apt install zoneminder
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 Zoneminder service
systemctl enable zoneminder.service
Add a user for local cameras
adduser www-data video
Enable Apache Features
a2enmod cgi
a2enmod rewrite
a2enconf zoneminder
Add timezone to PHP
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
Start Zoneminder
service zoneminder start
Restart Apache
service apache2 reload
Zoneminder should work! Open Zoneminder in a web browser (http://server-ip/zm).