ошибка start-stop-daemon (ошибка формата Exec)

Эта команда является частью скрипта upstart, который работал в Ubuntu 12.04, 10.04.

sudo start-stop-daemon --start --make-pidfile --pidfile /var/run/mk_order_handler.pid --chuid ubuntu --exec /data2/src/jeapps/sites/crons_index.php Works/mk_order_handler

Я только что обновил свою систему до 14.04, и скрипт upstart перестал работать. Когда я вручную выполнил команду start-stop-daemon, я получаю Exec format error.

Единственная разница, которую я вижу, заключается в том, что скрипт находится в отдельном блочном устройстве. Вызовет ли это проблему? Как я могу исправить эту ошибку?


person robert    schedule 07.08.2014    source источник


Ответы (2)


У меня только что была такая же проблема, и в моем случае это было связано с тем, что в моем сценарии отсутствовал #!/bin/bash в первой строке.

person javabeangrinder    schedule 08.04.2015

Вы должны отделить аргументы от пути к исполняемому файлу, используя --.

Результат будет:

start-stop-daemon --start --make-pidfile --pidfile /var/run/mk_order_handler.pid --chuid ubuntu --exec /data2/src/jeapps/sites/crons_index.php --workers/mk_order_handler

Кроме того, я не знаю, почему вы используете sudo. Задания Upstart запускаются от имени пользователя root, поэтому им не требуется sudo.

person CameronNemo    schedule 12.08.2014