После перезагрузки машины сценарий запуска поднимает один сервер, но один остается выключенным. Когда я вручную запускаю скрипт, оба сервера запускаются нормально
#!/bin/bash
###BEGIN INIT INFO
#chkconfig: 12345 98 13
#Provides: ACE
#Required-Start: $local_fs
#Required-Stop: $local_fs
#Default-Start: 2 3 4 5
#Default-Stop: 0 1 6
#Short-Description: IBM ACE Control
#Description: IBM-ACE
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/bin
ACE_OWNR="root"
STARTUP=/root/IBM/Startup.log
#WLOG_START=/dev/null
STOP=/root/IBM/Stop.log
touch $STARTUP
touch $STOP
/bin/chown root:root $STARTUP
/bin/chown root:root $STOP
start() {
echo "Startovanje Queue Manager"
/opt/mqm/bin/strmqm QMPROD1
echo "Startovan Queue Manager"
sleep 2
echo "Startovanje IBM ACE"
/opt/ace-12.0.4.0/server/bin/mqsistart IIBPROD1
sleep 2
echo "Startovan IBM ACE(Svaka Cast)"
}
stop() {
echo "Stopiranje IBM ACE"
/opt/ace-12.0.4.0/server/bin/mqsistop IIBPROD1
echo "Stopiran IBM ACE"
sleep 2
echo "Stopiranje Queue Manager"
/opt/mqm/bin/endmqm QMPROD1
sleep 2
echo "Stopiran Queue Manager"
}
case "$1" in
start) start ;;
stop) stop;;
*) echo "usage $0 start|stop" >&2
exit
;;
esac
Вот мой сценарий. Я поместил его на уровни запуска 12345 как S98 и K13. Но когда я перезагружаю его, запускается только QM, ACE остается выключенной. Моя ОС — Centos 8.
1 ответ
Я нашел ответ: у меня уже есть скрипт, созданный через systemd, и это было для диспетчера очередей, а в приведенном выше скрипте просто удалены части, где упоминался QM. Основным и самым большим изменением, которое я сделал, было отключение SELinux в файле /etc/selinux/config. Измените строку SELINUX=enforcing на SELINUX=disabled, перезагрузите компьютер, и все заработало нормально. Не нашел решения для запуска сценариев после перезагрузки с включенным SELINUX.