Ubuntu Server 14.04 64-bit with Zoneminder 1.29.0 the easy way

From ZoneMinder Wiki
Revision as of 09:52, 12 February 2016 by Bbunge (talk | contribs)
Jump to navigationJump to search

Install Basic Server (if you used the mini.iso), OpenSSH Server, and LAMP Server

Log in then become root:

sudo su

Make sure you are up to date

apt-get update
apt-get upgrade
apt-get dist-upgrade


Add Repository

add-apt-repository ppa:iconnor/zoneminder

Update Sources

apt-get update

Install Zoneminder and PHP5-GD

apt-get install zoneminder php5-gd

You may be prompted to set up Nulmailer. You may accept the defaults and set this up later if you want to use it.

Create Zoneminder database in MySQL (Note: this also creates the default Zoneminder user and permissions in MySQL). You will be prompted for the MySQL root password.

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

Set permissions of /etc/zm/zm.conf to root:www-data 740

chmod 740 /etc/zm/zm.conf
chown root:www-data /etc/zm/zm.conf

Add delay to allow MySQL to start before Zoneminder

nano /etc/init.d/zoneminder

Add sleep 15 after the existing "start() {" as shown:

start() {
     sleep 15
     echo -n "Starting $prog: "

Ctrl+o Enter to save

CTRL+x to exit


Create a new user

adduser www-data video

Enable CGI, Zoneminder and rewrite configuration in Apache.

a2enmod cgi
a2enconf zoneminder
a2enmod rewrite

Start Zoneminder

service zoneminder start

Add timezone to PHP

nano /etc/php5/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

service apache2 reload

Open Zoneminder in a web browser (http://server-ip/zm).

Click on Options - Paths Change PATH_ZMS to /zm/cgi-bin/nph-zms