zoneminder/distros/ubuntu1504/postinst

54 lines
1.7 KiB
Bash

#! /bin/sh
set -e
if [ "$1" = "configure" ]; then
if [ -e "/lib/systemd/system/mysql.service" ]; then
#
# Get mysql started if it isn't
#
if ! $(systemctl is-active mysql >/dev/null 2>&1); then
systemctl start mysql
fi
if $(systemctl is-active mysql >/dev/null 2>&1); then
mysqladmin --defaults-file=/etc/mysql/debian.cnf -f reload
# test if database if already present...
if ! $(echo quit | mysql --defaults-file=/etc/mysql/debian.cnf zm > /dev/null 2> /dev/null) ; then
cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/debian.cnf
echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
fi
systemctl stop zoneminder || true #not sure about "|| true"
zmupdate.pl --nointeractive
else
echo 'NOTE: mysql not running, please start mysql and run dpkg-reconfigure zoneminder when it is running.'
fi
else
echo 'mysql not found, assuming remote server.'
fi
chown www-data:www-data /var/log/zm
chown www-data:www-data /var/lib/zm/
if [ -z "$2" ]; then
chown www-data:www-data -R /var/cache/zoneminder
fi
fi
# Ensure zoneminder is stopped...
if [ -e "/lib/systemd/system/zoneminder.service" ]; then #changed from -x to -e, could be wrong
if systemctl is-active zoneminder >/dev/null 2>&1 ; then
systemctl stop zoneminder || exit $?
fi
fi
if [ "$1" = "configure" ]; then
if [ -z "$2" ]; then
chown www-data:www-data /var/log/zm
chown www-data:www-data /var/lib/zm/
chown www-data:www-data -R /var/cache/zoneminder
else
chown www-data:www-data /var/log/zm
zmupdate.pl
fi
fi
#DEBHELPER#