189 lines
4.7 KiB
Bash
189 lines
4.7 KiB
Bash
#!/bin/bash
|
|
|
|
### BEGIN INIT INFO
|
|
# Provides: omcd
|
|
# Required-Start:
|
|
# Required-Stop:
|
|
# Default-Start: 2 3 4 5
|
|
# Default-Stop: 0 1 6
|
|
# Short-Description: Start omcd daemon at boot time
|
|
# Description: Start omcd daemon at boot time
|
|
### END INIT INFO
|
|
|
|
# chkconfig: 2345 98 18
|
|
# description: as following
|
|
# CVS $Id: omcd,v 1.2 2002/09/10 19:53:49 hewd Exp $
|
|
# For WXC2 OMC
|
|
# Comments to support chkconfig on RedHat Linux
|
|
|
|
|
|
userName=`whoami`
|
|
|
|
#mysql_user=`/usr/local/mssBak/script/encryption 1 "6266706d736f7a7c7b6b7f7b7f"`
|
|
#mysql_pw=`/usr/local/mssBak/script/encryption 1 "2b3a392757557b697b7e7e757b777c"`
|
|
|
|
|
|
clear_crontab()
|
|
{
|
|
echo "Clear EMS crontab"
|
|
crontab -l > /tmp/cur_crontab
|
|
sed '/backup_mss/d' /tmp/cur_crontab | sed '/audit_ems_log/d' | sed '/omcMainWatcher/d' | sed '/createMscHourlyCsta/d' | sed '/audit_mysql_log/d' | sed '/^\s*$/d' > /tmp/new_crontab
|
|
crontab -u root /tmp/new_crontab
|
|
rm -rf /tmp/cur_crontab /tmp/new_crontab
|
|
rm -rf /tmp/*.lock
|
|
}
|
|
|
|
resume_crontab()
|
|
{
|
|
echo "Resume EMS crontab"
|
|
crontab -l > /tmp/new_crontab
|
|
|
|
if test `grep -c cdr_io_proc /tmp/new_crontab` -eq 1 ; then
|
|
sed -i '/cdr_io_proc/d' /tmp/new_crontab
|
|
fi
|
|
if test `grep -c cdr_data_proc /tmp/new_crontab` -eq 1 ; then
|
|
sed -i '/cdr_data_proc/d' /tmp/new_crontab
|
|
fi
|
|
|
|
cat /usr/local/mssBak/script/cronset >> /tmp/new_crontab
|
|
sed '/^\s*$/d' /tmp/new_crontab > /tmp/new_crontab1
|
|
crontab -u root /tmp/new_crontab1
|
|
rm -rf /tmp/new_crontab /tmp/new_crontab1
|
|
}
|
|
|
|
if [ `uname -r |grep -c '2.4.7-10'` -eq 1 ] ; then
|
|
LD_LIBRARY_PATH=/usr/local/mysql/lib ; export LD_LIBRARY_PATH
|
|
else
|
|
LD_LIBRARY_PATH=/usr/lib/mysql ; export LD_LIBRARY_PATH
|
|
fi
|
|
|
|
startProcList="iptrans omcMain paraComm subsComm logCollector omcCleaner smcli cdrCollector subsDataBackup ftpSend alarmAgent nrtrde sftpSend cstaCollector"
|
|
#alive bsscomm
|
|
stopProcList="iptrans omcMain paraComm subsComm logCollector omcCleaner smcli cdrCollector subsDataBackup ftpSend alarmAgent nrtrde sftpSend cstaCollector"
|
|
statusProcList=$stopProcList
|
|
|
|
slaveStartProcList="iptrans omcMain"
|
|
#include some functions like status,killproc
|
|
. /etc/init.d/functions
|
|
|
|
omcBinDir=/usr/local/omc/bin
|
|
cd $omcBinDir
|
|
|
|
#find omcRunMode
|
|
omcRunMode=`grep omcRunMode ./conf/omcd.conf|cut -d"=" -f2`
|
|
|
|
if [ "$omcRunMode" = "0" ] ; then
|
|
echo "+--------------------------------+"
|
|
echo "+ Running In Single EMS Mode +"
|
|
echo "+--------------------------------+"
|
|
else
|
|
echo "+--------------------------------+"
|
|
echo "+ Running In Dual EMS Mode +"
|
|
echo "+--------------------------------+"
|
|
fi
|
|
|
|
mode=$1
|
|
case "$mode" in
|
|
start)
|
|
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock 2>/dev/null
|
|
if [ "$userName" != "root" ] ; then
|
|
echo "Just root user can run this sever!!"
|
|
exit 1
|
|
fi
|
|
if [ "$omcRunMode" = "0" ] ; then
|
|
for procName in $startProcList;do
|
|
if(test -x $procName) then
|
|
killall $procName 2>/dev/null
|
|
./$procName -d 2>/dev/null
|
|
echo "Starting $procName process ..."
|
|
else
|
|
echo "Can't startup $procName process"
|
|
fi
|
|
sleep 1
|
|
done
|
|
else
|
|
for procName in $slaveStartProcList;do
|
|
if(test -x $procName) then
|
|
killall $procName 2>/dev/null
|
|
./$procName -d 2>/dev/null
|
|
echo "Starting $procName process ..."
|
|
else
|
|
echo "Can't startup $procName process"
|
|
fi
|
|
sleep 1
|
|
done
|
|
fi
|
|
resume_crontab
|
|
|
|
|
|
|
|
#while [ -z `pidof omcMain` ];
|
|
#do
|
|
# sleep 1
|
|
#done
|
|
#/usr/local/omc/bin/mysql_OMCmain_Auditlog_filter
|
|
|
|
if [ -z `pidof omcMain` ] ; then
|
|
sleep 2
|
|
if [ -z `pidof omcMain` ] ; then
|
|
echo "omcMain still not starts"
|
|
else
|
|
/usr/local/omc/bin/mysql_OMCmain_Auditlog_filter
|
|
fi
|
|
else
|
|
/usr/local/omc/bin/mysql_OMCmain_Auditlog_filter
|
|
fi
|
|
|
|
#raid_package=`rpm -q sas_snmp`
|
|
#if [ `echo $raid_package |grep -c 'not'` -eq 1 ] ; then
|
|
# echo ""
|
|
#else
|
|
# echo "restart RAID related process"
|
|
# service snmpd restart
|
|
# service lsi_mrdsnmpd restart
|
|
#fi
|
|
|
|
|
|
;;
|
|
status)
|
|
for procName in $statusProcList;do
|
|
status $procName
|
|
done
|
|
;;
|
|
stop)
|
|
if [ "$userName" != "root" ] ; then
|
|
echo "Just root user can run this sever!!"
|
|
exit 1
|
|
fi
|
|
clear_crontab
|
|
for procName in $stopProcList;do
|
|
if [ `uname -r |grep -c '2.4.7-10'` -eq 1 ] ; then
|
|
killproc $procName -SIGTERM
|
|
else
|
|
/usr/bin/killall $procName
|
|
fi
|
|
echo "$procName stopped";
|
|
done
|
|
clear_crontab
|
|
clear_crontab
|
|
#`/usr/bin/mysql -u${mysql_user} -p${mysql_pw} <<_EOF_
|
|
#stop slave;
|
|
#_EOF_`
|
|
;;
|
|
restart)
|
|
$0 stop
|
|
sleep 1
|
|
$0 start
|
|
;;
|
|
version)
|
|
thisVersion=`tail -3 ../install.log |grep -v Date | awk '{print $3}'`
|
|
echo "AgrandTech EMS $thisVersion"
|
|
;;
|
|
*)
|
|
echo "AgrandTech EMS"
|
|
echo "Usage: $0 start|status|stop|restart|version"
|
|
exit 3
|
|
;;
|
|
esac
|
|
|
|
exit 0 |