Назад | Перейти на главную страницу

Ubuntu выскочка зависает при интерактивном запуске и остановке

Как заставить Ubuntu выскочку не зависать при интерактивном запуске и остановке?

Я создал много сценариев выскочки, которые отлично работают во время инициализации, но часто зависают, когда я ввожу их в консоль. Если я нажимаю CTRL + C, все, что происходит, - это изменение состояния задания. Скрипт никогда не запускается.

Я запускаю Ubuntu Lucid на виртуальном сервере Xen с ядром Linux 2.6.39.

Ниже приведен лишь типичный пример многих сценариев, которые ведут себя таким образом:

description "apache2"

start on local-filesystems \
  and (net-device-up IFACE=lo) \
  and (runlevel [2345])
stop on runlevel [016]

respawn
respawn limit 10 5

expect daemon

script
  . /etc/apache2/envvars
  /usr/sbin/apache2ctl start
end script

Посмотрите мой вопрос на askubuntu.com о том же:

https://askubuntu.com/questions/3126/upstart-supervised-init-script-for-apache

В опубликованном вами примере все сводится к прямому выполнению двоичного файла apache вместо выполнения сценария apache2ctl. Upstart ожидает, что процесс не начнет умирать сразу, в основном; что и делает apache2ctl.

На мой вопрос на askubuntu.com есть рабочий сценарий выскочки Apache.