Не удалось запустить ~~~.service в linux18.04, служебную программу systemd

#linux #service #server #daemon #systemd

#linux #Обслуживание #сервер #демон #systemd

Вопрос:

Я настраиваю новую служебную программу. Я использую systemctl . но когда я авторизовался, включил, запустил службу, но она не работала с ошибкой «Не удалось запустить ~~~.service.

Я командовал этими командами.

 sudo systemctl daemon-reload
sudo systemctl start serverProgram.service
sudo systemctl enable serverProgram.service
sudo systemctl status serverProgram.service
 

и код ошибки выглядит следующим образом.

 serverProgram.service : Service hold-off time over, scheduling restart.
serverProgram.service : Scheduled restart job, restart counter is a 5. Stopped serverProgram.service.
serverProgram.service : Start request repeated too quickly.
serverProgram.service : Failed with result 'exit-code'.
Failed to start serverProgram.service.
 

Я написал serverProgram.service с помощью nano.
и код такой.

 # serverProgram file

[Service]
WorkingDirectory=/home/Desktop/LSH/Study/C  /DaemonProgram
ExecStart=/home/Desktop/LSH/Study/C  /DaemonProgram/main
Restart=always

[Install]
WantedBy=multi-user.target
 

Я хочу автоматически активировать основную программу при перезагрузке

Ответ №1:

Похоже, что программа, которую вы пытаетесь запустить, завершается сбоем, как только вы пытаетесь ее запустить. systemd пытается перезапустить его (потому что у вас есть Restart=always ), но он сдается, если обнаруживает много перезапусков за очень короткий период.

Если ваша программа работает нормально при запуске вручную, помните, что systemd она будет пытаться запустить ее в другой роли, чем обычно (другой пользователь, другие настройки среды и т. Д.)

Вы должны иметь возможность видеть выходные данные вашей программы с помощью journalctl — в этом ответе приведен краткий пример того, как его использовать.