pandorafms/pandora_server/DEBIAN/postinst

103 lines
3.3 KiB
Plaintext
Raw Normal View History

#!/bin/bash
get_distro () {
# Get Linux Distro type and version
# We assume we are on Linux unless told otherwise
LINUX=YES
if [ -f "/etc/SuSE-release" ]
then
OS_VERSION=`cat /etc/SuSE-release | grep VERSION | cut -f 3 -d " "`
LINUX_DISTRO=SUSE
elif [ -f "/etc/lsb-release" ]
then
OS_VERSION=`cat /etc/lsb-release | grep DISTRIB_RELEASE | cut -f 2 -d "="`
LINUX_DISTRO=UBUNTU
OS_VERSION="UBUNTU $OS_VERSION"
elif [ -f "/etc/debian_version" ]
then
OS_VERSION=`cat /etc/debian_version`
OS_VERSION="DEBIAN $OS_VERSION"
LINUX_DISTRO=DEBIAN
elif [ -f "/etc/fedora-release" ]
then
OS_VERSION=`cat /etc/fedora-release | cut -f 4 -d " "`
OS_VERSION="FEDORA $OS_VERSION"
LINUX_DISTRO=FEDORA
elif [ `uname -s` == "Darwin" ]
then
# For future reference, Darwin doesn't have /etc/init.d but uses LaunchDaemons
LINUX_DISTRO="Darwin"
OS_VERSION=`uname -r`
LINUX=NO
elif [ `uname -s` == "AIX" ]
then
# For future reference, AIX doesn't have /etc/init.d
LINUX_DISTRO="AIX"
OS_VERSION=`uname -r`
LINUX=NO
elif [ `uname -s` == "SunOS" ]
then
# Some Solaris and other Unices don't have /etc/init.d, some have /usr/spool instead of /var/spool
LINUX_DISTRO="Solaris"
OS_VERSION=`uname -r`
LINUX=NO
elif [ `uname -s` == "Linux" ]
then
# Test for Linux to make sure we're on Linux
LINUX_DISTRO="GENERIC"
OS_VERSION=`uname -r`
else
# Default to Linux is false, test for real Linux above - that way we don't assume we can just plunk down files everywhere
LINUX_DISTRO=`uname -s`
OS_VERSION=`uname -r`
LINUX=NO
fi
echo "$LINUX_DISTRO:$OS_VERSION:$LINUX"
}
echo "Linking pandora_exec..."
ln -s /usr/bin/pandora_exec.server /usr/bin/pandora_exec 2> /dev/null
echo "Creating common Pandora FMS directories"
useradd pandora 2> /dev/null
mkdir -p /home/pandora/.ssh 2> /dev/null
chown -R pandora:root /home/pandora
chmod 755 /usr/bin/tentacle_server
echo "Giving proper permission to /var/spool/pandora"
chown -R pandora:www-data /var/spool/pandora/
echo "Creating setup directory in /etc/pandora"
mkdir /etc/pandora 2> /dev/null
#Check if exist old conf file
count_lines_conf=`cat /etc/pandora/pandora_server.conf | wc -l`
if [ $count_lines_conf -eq 0 ]
then
rm /etc/pandora/pandora_server.conf
ln -s /usr/share/pandora_server/conf/pandora_server.conf /etc/pandora/
chmod 770 /etc/pandora/pandora_server.conf
fi
echo "Linking startup script to /etc/rc2.d"
update-rc.d pandora_server defaults
# Tentacle server install
echo "Installing tentacle server in /etc/rc2.d/S80tentacle_serverd"
update-rc.d tentacle_serverd defaults
if [ -d /etc/cron.daily ]
then
echo "Create the Cron script to run daily Pandora DB tool"
echo "#!/bin/bash" > /etc/cron.daily/pandora_db
echo "perl /usr/share/pandora_server/util/pandora_db.pl /etc/pandora/pandora_server.conf" >> /etc/cron.daily/pandora_db
chmod 750 /etc/cron.daily/pandora_db
else
echo "You're probably not using cron for automatic scheduling. You should schedule the following command to run frequently (daily) on your master server:"
echo " perl /usr/share/pandora_server/util/pandora_db.pl /etc/pandora/pandora_server.conf"
fi
echo "Please, now, edit the /etc/pandora/pandora_server.conf and launch the Pandora Server with /etc/init.d/Pandora ."