Ubuntu Server or Desktop Zoneminder 1.36.x

From ZoneMinder Wiki
Jump to: navigation, search

Install Zoneminder 1.36.x on Ubuntu 20.04, 18.04 with shell script

This will install Zoneminder 1.36.x by using a shell script with one basic command (how easy is that!).

You will need a Ubuntu 20.04 or 18.04 install with LAMP (Apache, MySQL or Mariadb and PHP) installed desktop or server. Also works on 20.10

Timezone: it is recommended you set your specific timesone with:

sudo timedatectl set-timezone America/New_York

Of course use your timezone in place of America/New_York.


Google is your friend if you need instructions for setting up a LAMP server. However, a simple LAMP can be installed with these commands:

apt install apache2 php mariadb-server php-mysql libapache2-mod-php

Secure MySQL or Mariadb, create root password et. al.

mysql_secure_installation

Mariadb additional settings The default values for the database are adequate for initial setup. However, I recommend you make these changes before installing Zoneminder. Note: If you have sufficient memory double the values below. Edit the Mariadb config file:

sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf

Add the following in the [mysql] area:

innodb_file_per_table = ON
innodb_buffer_pool_ size = 256M
innodb_log_file_size - 32M

CTRL+o then [Enter] to save

CTRL+x to exit

Reatart Mariadb:

sudo service mysql restart

I recommend you install mysqltuner and run it from time to time and adjust the database settings as the number of saved events grows.


Shell script file contents:

#!/bin/sh
clear
read -p "This script installs Zoneminder 1.36.x on Ubuntu 20.04 or 18.04 with LAMP (MySQL or Mariadb) installed...
Press Enter to continue or Ctrl + c to quit" nothing
clear
read -p "Next we will add the PPA repository, install and configure the system to run Zoneminder. 
Press enter to continue" nothing
apt install -y software-properties-common
clear
add-apt-repository ppa:iconnor/zoneminder-1.36
apt update
clear
apt install -y zoneminder
systemctl enable zoneminder
service zoneminder start
adduser www-data video
a2enconf zoneminder
a2enmod rewrite
a2enmod headers
a2enmod expires
service apache2 reload
clear
read -p "Install complete. Open Zoneminder/Options and set the timezine. Press enter to continue" nothing
clear

Copy the contents of the script, open a terminal and run:

nano zm-install

Paste the contents of the script into Nano

Then:

Ctrl + o Ctrl + x

Next run:

chmod 755 zm-install

Start the script by entering:

./zm-install

Follow the prompts. Things are pretty simple. The timezone is now set in Zoneminder/Options.

Good Luck!