rc.local не запускает второй скрипт, если первый — «/opt/lampp/lampp start»

У меня есть сценарий, чтобы остановить сетевой менеджер во время загрузки. Я сделал запись для этого в rc.local. работает нормально. но на одном сервере установлен MySQL и в rc.local уже есть одна запись для запуска lampp. (/opt/lampp/lampp start).

после этого я сделал запись для своего сценария. теперь rc.local выглядит так:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/opt/lampp/lampp start
sh /etc/startupscript.sh
exit 0

во время загрузки выполняется первая запись, а журналы находятся в boot.log:


Пропуск профиля в /etc/apparmor.d/disable: usr.sbin.rsyslogd * Запуск профилей AppArmor [ OK ] Запуск XAMPP для Linux 5.6.24-1... XAMPP: Запуск Apache... ок. XAMPP: Запуск MySQL... хорошо. XAMPP: запуск ProFTPD... хорошо. Запуск XAMPP для Linux 5.6.24-1... XAMPP: запуск Apache... сбой. XAMPP: уже запущен другой веб-сервер. XAMPP: Запуск MySQL... хорошо.

XAMPP: запуск ProFTPD... уже запущен.

и выход. вторая строка sh /etc/startupscript.sh не выполняется.

Если я запускаю rc.local вручную, оба сценария выполняются успешно. заранее спасибо.


person Bharat Karale    schedule 13.10.2016    source источник
comment
Вы имели в виду, что если стартовой строки /opt/lampp/lampp нет, тогда запускается startupscript.sh?   -  person Prabhu    schedule 13.10.2016
comment
правильно Прабху, это был выход из-за последней ошибки.   -  person Bharat Karale    schedule 19.10.2016


Ответы (1)


Я получил ответ ... в первой строке rc.local есть -e, означающее «выход при ошибке». Я удаляю его, после чего все сценарии выполняются успешно. и не влияют друг на друга.

person Bharat Karale    schedule 19.10.2016