Common Issues with Zoneminder Installation on Ubuntu
02OCT15
With some changes “in-the-works” for Ubuntu installs by the hard working volunteers who keep Zoneminder up-to-date, it was recommended
that we post fixes/instructions for some issues that continue to surface. One difference will be that the Zoneminder install will no
longer automatically install the zm database in MySQL. This document will likely grow over time but may become obsolete as procedures
become better documented.
List of Issues
1.Zoneminder Database
2.Getting the API to work
1.Zoneminder Database
Versions of Zoneminder up to and including 1.28.1 in Ubuntu would automatically add the zm database to MySQL. Beginning about August
2015 the development version from the iconnor-master PPA omitted this step becoming like the Debian install process. Manually adding the database to MySQL will be To install the zm database (after doing apt-get install zoneminder) Create Zoneminder database in MySQL (Note: this also creates the default Zoneminder user and permissions in MySQL)
This next step creates a file which contained the MySQL user and password. Otherwise you will have to enter the user and password on the
command line which is not secure!
Go to the root directory
cd ~
Create a hidden password file
nano .my.cnf
Enter this content (but use your MySQL root password!)
[client] user=root password=(mysqlpass)
Ctrl+o Enter to save
CTRL+x to exit
Create database (press ENTER after each command)
mysql < /usr/share/zoneminder/db/zm_create.sql
mysql
grant select,insert,update,delete on zm.* to 'zmuser'@localhost identified by 'zmpass';
\q (enter) (to quit)
Remove password file
rm .my.cnf
Continue with the Zoneminder installation
2. Getting the API to work WARNING! If your Zoneminder is exposed to the internet make sure you have OPT_USE_AUTH enabled. The API is needed to get Zoneminder to work with zmNinja (under development as of 1OCT15) and possibly household automation software. The "official" documentation is here:https://github.com/pliablepixels/zmNinja/wiki/Configuring-ZoneMinder-with-API But can be done in three steps. Install cakephp
apt-get install cakephp
Enable rewrite
a2enmod rewrite
Change owner of /usr/share/zoneminder/www sub directories and files to: www-data:www-data
chown -R www-data:www-data /usr/share/zoneminder/www
Testing. if you have OPT_USE_AUTH turned on make sure you are logged into Zoneminder before you try the following tests or turn off OPT_USE_AUTH.
Test to see if cake is working: http://localhost/zm/api/
Test API using: http://localhost/zm/api/host/getVersion.json Should return something like:
{ "version": "1.28.107", "apiversion": "1.28.107.1" }