summaryrefslogtreecommitdiff
path: root/pcr/zoneminder/zoneminder.install
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/zoneminder/zoneminder.install')
-rw-r--r--pcr/zoneminder/zoneminder.install194
1 files changed, 0 insertions, 194 deletions
diff --git a/pcr/zoneminder/zoneminder.install b/pcr/zoneminder/zoneminder.install
deleted file mode 100644
index 66109d5fa..000000000
--- a/pcr/zoneminder/zoneminder.install
+++ /dev/null
@@ -1,194 +0,0 @@
-#!/usr/bin/bash
-pre_install() {
- set -e
- abort=false
- if [ -L /srv/http/zoneminder/events ]; then
- l=$(readlink /srv/http/zoneminder/events)
- if [ $l != /var/cache/zoneminder/events ]; then
- abort=true
- fi
- fi
- if [ -L /srv/http/zoneminder/images ]; then
- l=$(readlink /srv/http/zoneminder/images)
- if [ $l != /var/cache/zoneminder/images ]; then
- abort=true
- fi
- fi
- if [ $abort = true ]; then
- cat >&2 << EOF
-Aborting installation of zoneminder due to non-default symlinks in
-/srv/http/zoneminder for the images and/or events directory, which could
-result in loss of data. Please move your data in each of these directories to
-/var/cache/zoneminder before installing zoneminder from the package.
-EOF
- exit 1
- fi
- exit 0
-}
-
-post_install() {
- if [[ -d /var/log/zoneminder ]]; then
- chmod -v 0755 /var/log/zoneminder
- chown -v http.http /var/log/zoneminder
- else
- mkdir -vm 0755 /var/log/zoneminder
- chown -v http.http /var/log/zoneminder
- fi
- if [[ -d /tmp/zoneminder ]]; then
- chmod -v 0700 /tmp/zoneminder
- chown -v http.http /tmp/zoneminder
- else
- mkdir -vm 0700 /tmp/zoneminder
- chown -v http.http /tmp/zoneminder
- fi
- sed -i '
- /^;extension=mysql.so/ s/^;//;
- /^#extension=mysql.so/ s/^#//;
- /^;extension=mysqli.so/ s/^;//;
- /^#extension=mysqli.so/ s/^#//;
- /^;extension=gd.so/ s/^;//;
- /^#extension=gd.so/ s/^#//;
- /^;extension=gettext.so/ s/^;//;
- /^#extension=gettext.so/ s/^#//;
- /^;extension=mcrypt.so/ s/^;//;
- /^#extension=mcrypt.so/ s/^#//;
- /^;extension=session.so/ s/^;//;
- /^#extension=session.so/ s/^#//;
- /^;extension=sockets.so/ s/^;//;
- /^#extension=sockets.so/ s/^#//;
- /^;extension=openssl.so/ s/^;//;
- /^#extension=openssl.so/ s/^#//;
- /^;extension=ftp.so/ s/^;//;
- /^#extension=ftp.so/ s/^#//;
- /^;extension=zip.so/ s/^;//;
- /^#extension=zip.so/ s/^#//;
- /^;open_basedir/ s/^;//;
- /^#open_basedir/ s/^#//;
- /^open_basedir/ s/:\/etc//;
- /^open_basedir/ s/:\/etc\///;
- /^open_basedir/ s/$/:\/etc/;
- /^open_basedir/ s/:\/srv\/http\/zoneminder//;
- /^open_basedir/ s/:\/srv\/http\/zoneminder\///;
- /^open_basedir/ s/$/:\/srv\/http\/zoneminder/;
- /^open_basedir/ s/:\/var\/cache\/zoneminder//;
- /^open_basedir/ s/:\/var\/cache\/zoneminder\///;
- /^open_basedir/ s/$/:\/var\/cache\/zoneminder/;
- ' /etc/php/php.ini
- sed -i '
- /^LoadModule php5_module modules\/libphp5.so/d;
- /^LoadModule rewrite_module modules\/mod_rewrite.so/ s/$/\nLoadModule php5_module modules\/libphp5.so/;
- /^# PHP 5/d;
- /^# ZoneMinder/d;
- /^Include \/etc\/httpd\/conf\/extra\/php5_module.conf/d;
- /^Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d;
- /^Include conf\/extra\/httpd-default.conf/ s/$/\n\n# PHP 5\n\Include \/etc\/httpd\/conf\/extra\/php5_module.conf\n\n# ZoneMinder\nInclude \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/;
- ' /etc/httpd/conf/httpd.conf
- gpasswd -a http video
- cat << EOF
-Note for mysql:
-==> To run Zoneminder, you must install the database running mysql service (as root):
-==> "systemctl start mysqld.service"
-==> and add Zoneminder database typing (with passsword):
-==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f reload"
-==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf -p"
-==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql"
-==> (or without passsword):
-==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f reload"
-==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf"
-==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf mysql"
-
-Note for sysctl:
-==> You must uncomment that line in /etc/sysctl.d/sysctl-zoneminder.conf:
-==> "kernel.shmall = 524288000"
-==> "kernel.shmmax = 524288000"
-
-Note for php:
-==> You must uncomment that line in /etc/php/php.ini:
-==> "extension=mysql.so"
-==> check and make sure these are uncommented:
-==> "extension=gd.so"
-==> "extension=gettext.so"
-==> "extension=mcrypt.so"
-==> "extension=mysqli.so"
-==> "extension=session.so"
-==> "extension=sockets.so"
-==> "extension=openssl.so"
-==> "extension=ftp.so"
-==> "extension=zip.so"
-==> check and add to open_basedir "/etc",
-==> "/srv/http/zoneminder" and "/var/cache/zoneminder" like so
-==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/srv/http/zoneminder:/var/cache/zoneminder"
-==> and set your timezone in php.ini:
-==> "date.timezone = <your_zone>/<your_city>"
-
-Note for apache:
-==> You must edit /etc/httpd/conf/httpd.conf and add the line:
-==> "LoadModule php5_module modules/libphp5.so"
-==> and:
-==> "Include /etc/httpd/conf/extra/php5_module.conf"
-==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf"
-EOF
-}
-
-post_upgrade() {
- post_install
- _mysqld=$(systemctl status mysqld.service | grep -o 'inactive (dead)')
- [[ _mysqld == 'inactive (dead)' ]] && systemctl start mysqld.service
- /usr/bin/zmupdate.pl -f >/dev/null
- [[ _mysqld == 'inactive (dead)' ]] && systemctl stop mysqld.service
-}
-
-post_remove() {
- _zms=$(systemctl status zoneminder.service | grep -o 'active (running)')
- [[ _zms == 'active (running)' ]] && systemctl stop zoneminder.service
- [[ -d /tmp/zoneminder ]] && rm -vr /tmp/zoneminder
- sed -i '
- /^open_basedir/ s/:\/srv\/http\/zoneminder//;
- /^open_basedir/ s/:\/srv\/http\/zoneminder\///;
- /^open_basedir/ s/:\/var\/cache\/zoneminder\///
- ' /etc/php/php.ini
- sed -i '
- /^# ZoneMinder/d;
- /Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d;
- ' /etc/httpd/conf/httpd.conf
- cat << EOF
-Note:
-==> To clean Zoneminder mysql database, run as root (with password):
-==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql"
-==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql"
-==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f drop zm"
-==> (or without password):
-==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql"
-==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql"
-==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f drop zm"
-
-==> Disable http with php if it isn't needed with others servers,
-==> comment or remove that lines in /etc/httpd/conf/httpd.conf:
-==> "LoadModule php5_module modules/libphp5.so"
-==> "Include /etc/httpd/conf/extra/php5_module.conf"
-
-==> Remove line in /etc/httpd/conf/httpd.conf:
-==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf"
-
-==> Disable php with mysql if it isn't needed with others servers,
-==> comment that lines in /etc/php/php.ini:
-==> "extension=mysql.so"
-==> "extension=gd.so"
-==> "extension=gettext.so"
-==> "extension=mcrypt.so"
-==> "extension=mysqli.so"
-==> "extension=session.so"
-==> "extension=sockets.so"
-==> "date.timezone = <my_zone>/<my_city>"
-
-==> Drop http user on video group if it isn't needed with others servers:
-==> gpasswd -d http video
-
-==> Edit /etc/php/php.ini and remove "/etc", "/srv/http/zoneminder" and "/var/cache/zoneminder"
-==> in the "open_basedir".
-
-==> Remove log files and "zonemider" directory in "/var/log/zoneminder".
-
-==> Backup and remove "events", "images" and "temp" dirs in "/var/cache/zoneminder".
-EOF
-}