Служба запускается при вызове, но не при запуске

Я написал простой сценарий запуска, который запускает программу на Python, и сохранил его как vgpusher.conf.

Он не запускается автоматически, но если я запускаю sudo start vgpusher, он запускается и работает просто отлично.

Код прост:

description "vgpush"

start on runlevel [2345]
stop on runlevel [!2345]

script
    cd /home/computer/
    python pusher.py
end script

Я поместил сценарий в /etc/init. Кроме этого, я не делал никаких настроек.

На машине установлен сервер Ubuntu 10.04.

Нужно ли делать дополнительный шаг для запуска службы при запуске?

1
задан 8 July 2013 в 19:00

2 ответа

Во-первых, вам не нужен скрипт:

description "vgpush"

start on runlevel [2345]
stop on runlevel [!2345]

chdir /home/computer
exec python pusher.py

Во-вторых, это может помочь записать вывод. Если вы обновитесь до 12.04 (настоятельно рекомендуется!), У вас будет журнал в /var/log/upstart/$jobname.log. Для 10.04 вы должны сделать это вручную:

description "vgpush"

start on runlevel [2345]
stop on runlevel [!2345]

chdir /home/computer
exec python pusher.py 2>&1 >> /var/log/vgpush.log

Это может дать некоторую подсказку. Если бы мне пришлось угадывать, это потому, что для vgpush нужен работающий сетевой интерфейс, а 10.04 запускает уровень запуска 2, прежде чем все сетевые интерфейсы будут готовы.

0
ответ дан 8 July 2013 в 19:00

При поиске и устранении неисправностей в задании на вылет необходимо проверить несколько вещей.

  1. Проверьте правильность задания запуска. Ваш выглядит неплохо, но я бы предложил использовать полный путь к исполняемому файлу python (/ usr / bin / python).

  2. Проверьте журнал заданий выскочки. для каждого задания есть файл журнала по адресу /var/log/upstart/.log. Возможно, ваша работа по какой-то причине запускается и завершается сбоем (возможно, для pusher.py требуется подключение к сети), и этот файл журнала, вероятно, будет содержать информацию на что. По крайней мере, он покажет, пытается ли задание начать работу.

0
ответ дан 8 July 2013 в 19:00

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

Похожие вопросы: