Проблема Запуск ColdFusion 2018 на Solaris 11.3 с учетной записью без полномочий root
У меня есть система Solaris с 3 пользователями ( root, cfruntime, cfdev)
После успешной установки ColdFusion 2018 владельцем установки coldfusion2018 является cfruntime.
Как cfdev я пытаюсь запустить ColdFusion с помощью следующей команды
sudo /disktwo/coldfusion2018/cfusion/bin/coldfusion start
Это, однако, кажется, не запускает Coldfusion нормально, но также не генерирует какие-либо необычные ошибки / log
Глядя на скрипт запуска /disktwo/coldfusion2018/cfusion/bin/coldfusion. Следующие строки на самом деле запускает ColdFusion
CFSTART='su $RUNTIME_USER -c "LD_LIBRARY_PATH=$LD_LIBRARY_PATH;
export LD_LIBRARY_PATH;
cd $CF_DIR/bin;
$JAVA_EXECUTABLE -classpath $CLASSPATH $JVM_ARGS
com.adobe.coldfusion.bootstrap.Bootstrap -start &"'
eval $CFSTART > /dev/null
Интересное наблюдение, которое я сделал, заключалось в том, что если я уберу &
в конце CFSTART
, ColdFusion запускается нормально (хотя мне нужно положить его в фоновом режиме crtl-z , bg
)
Процесс ColdFusion не выглядит постоянным после выхода из сценария запуска, если он запускается как (cfdev/cfruntime), но обычно запускается, если сценарий запускается от имени пользователя root.
Какие-нибудь мысли?
0 ответов
Добавление nohup
перед $JAVA_EXECUTABLE
команда и отправка вывода >/dev/null 2>&1
сделал трюк для меня
CFSTART='su $RUNTIME_USER -c "LD_LIBRARY_PATH=$LD_LIBRARY_PATH;
export LD_LIBRARY_PATH;
cd $CF_DIR/bin;
nohup $JAVA_EXECUTABLE -classpath $CLASSPATH $JVM_ARGS
com.adobe.coldfusion.bootstrap.Bootstrap -start > /dev/null 2>&1 &"'
Я обнаружил, что кажется, что переключение на пользователя во время выполнения su $RUNTIME_USER
и запуск процесса в фоновом режиме вызвал закрытие всех заданий, запущенных оболочкой, после завершения сценария запуска (отправка сигнала зависания (SIGHUP) всем заданиям, запущенным этим терминалом) .
nohup
предотвращает $JAVA_EXECUTABLE
от закрытия, когда он получает сигнал зависания (SIGHUP)