diff options
Diffstat (limited to 'pcr/zoneminder/zoneminder.install')
-rw-r--r-- | pcr/zoneminder/zoneminder.install | 194 |
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 -} |