149 lines
5.6 KiB
Plaintext
149 lines
5.6 KiB
Plaintext
|
What's New
|
||
|
==========
|
||
|
|
||
|
1. The Apache ScriptAlias has been changed from "/cgi-bin/zm/zms" to
|
||
|
"/cgi-bin-zm/zms". This has been to done to avoid this bug:
|
||
|
https://bugzilla.redhat.com/show_bug.cgi?id=973067
|
||
|
|
||
|
IMPORTANT: You must manually verify the value of PATH_ZMS under Options.
|
||
|
Make sure it is set to "/cgi-bin-zm/nph-zms". Failure to do so will result
|
||
|
in a broken system. You have been warned.
|
||
|
|
||
|
2. Due to the active state of the ZoneMinder project, we now recommend granting
|
||
|
ALL permission to the ZoneMinder mysql account. This change must be done
|
||
|
manually before ZoneMinder will run. See the installation steps below.
|
||
|
|
||
|
3. This package uses the HTTPS protocol by default to access the web portal.
|
||
|
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
||
|
more information.
|
||
|
|
||
|
4. This package ships with the new ZoneMinder API enabled.
|
||
|
|
||
|
New installs
|
||
|
============
|
||
|
|
||
|
1. Unless you are already using MariaDB server, you need to ensure that the
|
||
|
server is configured to start during boot and properly secured by running:
|
||
|
|
||
|
sudo dnf install mariadb-server
|
||
|
sudo systemctl enable mariadb
|
||
|
sudo systemctl start mariadb.service
|
||
|
mysql_secure_installation
|
||
|
|
||
|
2. Using the password for the root account set during the previous step, you
|
||
|
will need to create the ZoneMinder database and configure a database
|
||
|
account for ZoneMinder to use:
|
||
|
|
||
|
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
|
||
|
|
||
|
The database account credentials, zmuser/zmpass, are arbitrary. Set them to
|
||
|
anything that suits your environment.
|
||
|
|
||
|
3. If you have chosen to change the zoneminder database account credentials to
|
||
|
something other than zmuser/zmpass, you must now edit /etc/zm/zm.conf.
|
||
|
Change ZM_DB_USER and ZM_DB_PASS to the values you created in the previous
|
||
|
step.
|
||
|
|
||
|
This version of zoneminder no longer requires you to make a similar change
|
||
|
to the credentials in /usr/share/zoneminder/www/api/app/Config/database.php
|
||
|
This now happens dynamically. Do *not* make any changes to this file.
|
||
|
|
||
|
4. Edit /etc/php.ini, uncomment the date.timezone line, and add your local
|
||
|
timezone. PHP will complain loudly if this is not set, or if it is set
|
||
|
incorrectly, and these complaints will show up in the zoneminder logging
|
||
|
system as errors.
|
||
|
|
||
|
If you are not sure of the proper timezone specification to use, look at
|
||
|
http://php.net/date.timezone
|
||
|
|
||
|
5. Disable SELinux
|
||
|
|
||
|
We currently do not have the resources to create and maintain an accurate
|
||
|
SELinux policy for ZoneMinder on CentOS 7. We will gladly accept pull
|
||
|
reqeusts from anyone who wishes to do the work. In the meantime, SELinux
|
||
|
will need to be disabled or put into permissive mode.
|
||
|
|
||
|
To immediately disbale SELinux for the current seesion, issue the following
|
||
|
from the command line:
|
||
|
|
||
|
sudo setenforce 0
|
||
|
|
||
|
To permanently disable SELinux, edit /etc/selinux/config and change the
|
||
|
SELINUX line from "enforcing" to "disabled". This change will take
|
||
|
effect after a reboot.
|
||
|
|
||
|
6. Install mod_ssl or configure /etc/httpd/conf.d/zoneminder.conf to meet your
|
||
|
needs. This package comes preconfigured for HTTPS using the default self
|
||
|
signed certificate on your system. The recommended way to complete this step
|
||
|
is to simply install mod_ssl:
|
||
|
|
||
|
sudo yum install mod_ssl
|
||
|
|
||
|
If this does not meet your needs, then read README.https to
|
||
|
learn about alternatives. When in doubt, install mod_ssl.
|
||
|
|
||
|
7. Now start the web server:
|
||
|
|
||
|
sudo systemctl enable httpd
|
||
|
sudo systemctl start httpd
|
||
|
|
||
|
8. Now start zoneminder:
|
||
|
|
||
|
sudo systemctl enable zoneminder
|
||
|
sudo systemctl start zoneminder
|
||
|
|
||
|
Upgrades
|
||
|
========
|
||
|
|
||
|
1. Verify /etc/zm/zm.conf.
|
||
|
|
||
|
If zm.conf was manually edited before running the upgrade, the installation
|
||
|
may not overwrite it. In this case, it will create the file
|
||
|
/etc/zm/zm.conf.rpmnew.
|
||
|
|
||
|
For example, this will happen if you are using database account credentials
|
||
|
other than zmuser/zmpass.
|
||
|
|
||
|
Compare /etc/zm/zm.conf to /etc/zm/zm.conf.rpmnew. Verify that zm.conf
|
||
|
contains any new config settings that may be in zm.conf.rpmnew.
|
||
|
|
||
|
This version of zoneminder no longer requires you to make a similar change
|
||
|
to the credentials in /usr/share/zoneminder/www/api/app/Config/database.php
|
||
|
This now happens dynamically. Do *not* make any changes to this file.
|
||
|
|
||
|
2. Verify permissions of the zmuser account.
|
||
|
|
||
|
Over time, the database account permissions required for normal operation
|
||
|
have increased. Verify the zmuser database account has been granted all
|
||
|
permission to the ZoneMinder database:
|
||
|
|
||
|
mysql -uroot -p -e "show grants for zmuser@localhost;"
|
||
|
|
||
|
See step 2 of the Installation section to add missing permissions.
|
||
|
|
||
|
3. Verify the ZoneMinder Apache configuration file in the folder
|
||
|
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
||
|
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
||
|
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
||
|
Verify the SSL REquirements meet your needs. Read README.https if necessary.
|
||
|
|
||
|
4. Upgrade the database before starting ZoneMinder.
|
||
|
|
||
|
Most upgrades can be performed by executing the following command:
|
||
|
|
||
|
sudo zmupdate.pl
|
||
|
|
||
|
Recent versions of ZoneMinder don't require any parameters added to the
|
||
|
zmupdate command. However, if ZoneMinder complains, you may need to call
|
||
|
zmupdate in the following manner:
|
||
|
|
||
|
sudo zmupdate.pl --user=root --pass=<mysql_root_pwd> --version=<from version>
|
||
|
|
||
|
5. Now start zoneminder:
|
||
|
|
||
|
sudo systemctl start zoneminder
|
||
|
|