2 ############################################################################
4 # This file is part of the IPFire Firewall. #
6 # IPFire is free software; you can redistribute it and/or modify #
7 # it under the terms of the GNU General Public License as published by #
8 # the Free Software Foundation; either version 2 of the License, or #
9 # (at your option) any later version. #
11 # IPFire is distributed in the hope that it will be useful, #
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
14 # GNU General Public License for more details. #
16 # You should have received a copy of the GNU General Public License #
17 # along with IPFire; if not, write to the Free Software #
18 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #
20 # Copyright (C) 2007 IPFire-Team <info@ipfire.org>. #
22 ############################################################################
24 .
/opt
/pakfire
/lib
/functions.sh
26 if ! getent group zabbix
&>/dev
/null
; then
27 groupadd
-g 118 zabbix
30 if ! getent passwd zabbix
; then
31 useradd
-u 118 -g zabbix
-d /var
/empty
-s /bin
/false zabbix
36 # Create symlinks for runlevel interaction.
37 ln -sf ..
/init.d
/zabbix_agentd
/etc
/rc.d
/rc3.d
/S65zabbix_agentd
38 ln -sf ..
/init.d
/zabbix_agentd
/etc
/rc.d
/rc0.d
/K02zabbix_agentd
39 ln -sf ..
/init.d
/zabbix_agentd
/etc
/rc.d
/rc6.d
/K02zabbix_agentd
41 # Create additonal directories and set permissions
42 [ -d /var
/log
/zabbix
] ||
( mkdir
-pv /var
/log
/zabbix
&& chown zabbix.zabbix
/var
/log
/zabbix
)
43 [ -d /usr
/lib
/zabbix
] ||
( mkdir
-pv /usr
/lib
/zabbix
&& chown zabbix.zabbix
/usr
/lib
/zabbix
)
45 restore_backup
${NAME}
47 # Check if old IPFire specifc userparameters exist and move out of the way
48 if [ -f /etc
/zabbix_agentd
/zabbix_agentd.d
/userparameter_pakfire.conf
]; then
49 mv /etc
/zabbix_agentd
/zabbix_agentd.d
/userparameter_pakfire.conf \
50 /etc
/zabbix_agentd
/zabbix_agentd.d
/userparameter_pakfire.conf.save
53 # Check if new IPFire specific config is included in restored config
54 # and add if required.
55 grep -q "Include=/var/ipfire/zabbix_agentd/userparameters/\*.conf" /etc
/zabbix_agentd
/zabbix_agentd.conf
57 echo "" >> /etc
/zabbix_agentd
/zabbix_agentd.conf
58 echo "# This line activates IPFire specific userparameters. " >> /etc
/zabbix_agentd
/zabbix_agentd.conf
59 echo "# See IPFire wiki for details." >> /etc
/zabbix_agentd
/zabbix_agentd.conf
60 echo "# To deactivate them: Comment this line out." >> /etc
/zabbix_agentd
/zabbix_agentd.conf
61 echo "# (DO NOT REMOVE OR ALTER IT as then it will be re-added on next upgrade)" >> /etc
/zabbix_agentd
/zabbix_agentd.conf
62 echo "Include=/var/ipfire/zabbix_agentd/userparameters/*.conf" >> /etc
/zabbix_agentd
/zabbix_agentd.conf
65 grep -q "Include=/var/ipfire/zabbix_agentd/zabbix_agentd_ipfire_mandatory.conf" /etc
/zabbix_agentd
/zabbix_agentd.conf
67 # Remove settings that are now in our own config
68 sed -i -e "\|^PidFile=.*$|d" /etc
/zabbix_agentd
/zabbix_agentd.conf
69 sed -i -e "\|^LogFile=.*$|d" /etc
/zabbix_agentd
/zabbix_agentd.conf
70 sed -i -e "\|^LogFileSize=.*$|d" /etc
/zabbix_agentd
/zabbix_agentd.conf
71 sed -i -e "\|^LoadModulePath=.*$|d" /etc
/zabbix_agentd
/zabbix_agentd.conf
72 sed -i -e "\|^Include=/etc/zabbix_agentd/zabbix_agentd\.d/\*\.conf$|d" /etc
/zabbix_agentd
/zabbix_agentd.conf
73 # Include our own config in main config
74 echo "" >> /etc
/zabbix_agentd
/zabbix_agentd.conf
75 echo "# Mandatory Zabbix Agent configuration to start and run on IPFire correctly" >> /etc
/zabbix_agentd
/zabbix_agentd.conf
76 echo "# DO NOT REMOVE OR MODIFY THIS LINE:" >> /etc
/zabbix_agentd
/zabbix_agentd.conf
77 echo "Include=/var/ipfire/zabbix_agentd/zabbix_agentd_ipfire_mandatory.conf" >> /etc
/zabbix_agentd
/zabbix_agentd.conf
80 start_service
--background ${NAME}