Ubuntu Server 14.04 64-bit with Zoneminder 1.29.0 the easy way
As of 29JUL16 this procedure is obsolete and has been replaced with a procedure for Zoneminder 1.30.0
See: https://wiki.zoneminder.com/Ubuntu_Server_14.04_64-bit_with_Zoneminder_1.30.0_the_easy_way
If you are not experienced with Linux and would like a quick way to get Zoneminder running for you, consider Zoneminder on a stick, a per-configured Lubuntu 14.04 with Zoneminder 1.29.0. See: https://wiki.zoneminder.com/Lubuntu_14.04_with_Zoneminder_1.29.0_pre-configured_CD_or_USB
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.
Note: 20FEB16 It has been reported that you may need to add the following if you want to run the libvlc source type:
apt-get install libvlc-dev libvlccore-dev vlc
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 (Caution: make sure you enter only /zm/cgi-bin/nph-zms with no space at the end or your video will not work!)