Как сделать, чтоб запущенный из bash процесс не блокировал другие процессы ?

Фрагмент моего скрипта :

#Запуск MySQL сервера
 /usr/sbin/mysqld
if [ $? != 0 ]; then
     error_handler "Could not start mysql server..."
fi

#Запуск php-fpm
/usr/sbin/php-fpm
if [ $? != 0 ]; then
      error_handler "Could not start php-fpm..."
fi

#Запуск nginx
/usr/local/nginx/sbin/nginx
if [ $? != 0 ]; then
      error_handler "Could not start nginx..."
fi


Вся проблема в том , что после запуска MySQL сервера , остальная часть скрипта перестает выполняться . Можно ли сделать , чтоб MySQL запускался скажем в отдельном потоке ?
  • Вопрос задан
  • 2959 просмотров
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
/usr/sbin/mysqld &
А вы не думали просто через init.d/invoke.d/services запускать?
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
Попробуйте запускать так

/etc/init.d/mysql start
/etc/init.d/php-fpm start
/etc/init.d/nginx start
Ответ написан
Комментировать
ghaiklor
@ghaiklor
NodeJS TechLead
Запускайте демоны через systemctl, а не напрямую. Например:
sudo systemctl restart mysqld
Ответ написан
Комментировать
@nick88hello Автор вопроса
Дело в том , что я использую Cygwin , а там нет ни init.d/invoke.d/services . К тому же
сервер мне нужен не всегда , поэтому добавлять его в автозагрузку считаю не рационально.

А вот это попробую :
/usr/sbin/mysqld &
Ответ написан
@larrabee
systemctl и не добавляет в автозагрузку. Это если через chkconfig enable, то да.

Это может и systemctl. systemctl enable daemon
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы