После перезагрузки машины сценарий запуска поднимает один сервер, но один остается выключенным. Когда я вручную запускаю скрипт, оба сервера запускаются нормально

      #!/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.

Другие вопросы по тегам