Upstart сообщает "Задание уже запущено", но процесс не существует, и PID-файл отсутствует
Итак, я установил MiniDLNA и недавно обнаружил, что не могу запустить его с помощью Upstart.
Бег sudo start minidlna
возвращает:
minidlna start/running, process [num]
Но процесс не запускается (также должна быть дополнительная строка отчета о состоянии для запуска MiniDLNA).
Я получаю то же самое с sudo service minidlna start
Журналы обновлений (/var/log/upstart/minidlna.log) показывают:
start: Job is already running: minidlna
Попытка остановить или перезапустить, используя возврат upstart:
stop: Unknown instance:
Я могу успешно запустить MiniDLNA любым из следующих способов:
/usr/bin/minidlnad -f /etc/minidlna.conf
/etc/init.d/minidlna start
start-stop-daemon --start --pidfile /run/minidlna.pid --chuid minidlna:minidlna --exec /usr/bin/minidlnad -- -f /etc/minidlna.conf -P /run/minidlna.pid
Я также попытался удалить пользователя / группу MiniDLNA и повторно добавить безуспешно.
Это состояние сохраняется после перезагрузки.
Я в своем уме. Любая помощь будет отличной!
1 ответ
Я думаю, что ответ на вашу проблему находится на http://efiop-notes.blogspot.com/2014/06/how-to-set-pid-using-nslastpid.html, который является гораздо более эффективным способом ухода за выскочкой. проблемы, чем при циклическом переборе всех пидов, пока вы не создадите тот, который ищет выскочка.
Просто скомпилируйте программу с помощью компилятора C и запустите ее как sudo с PID, о котором знает upstart, и вуаля!
HTH, Шайлен