Спать не работает в сервисе

Я кладу ExecStartPre=/bin/sleep 60 в единичный файл (сервис) в Ubuntu 18.04

[Unit]
Description=Berkeley Open Infrastructure Network Computing Client
Documentation=man:boinc(1)
After=network-online.target

[Service]
ProtectHome=true
Type=simple
Nice=10
User=boinc
WorkingDirectory=/var/lib/boinc
ExecStartPre=/bin/sleep 60
ExecStart=/usr/bin/boinc
ExecStop=/usr/bin/boinccmd --quit
ExecReload=/usr/bin/boinccmd --read_cc_config
ExecStopPost=/bin/rm -f lockfile
IOSchedulingClass=idle

[Install]
WantedBy=multi-user.target

Я также проверил, что сон был в /bin

jstateson@rx560:/bin$ ls -l sleep
-rwxr-xr-x 1 root root 35000 Jan 18  2018 sleep
jstateson@rx560:/bin$

Но это не сработало. Я нашел следующие ошибки в системном журнале

May 20 07:30:16 rx560 systemd[1]: boinc-client.service: Start-pre operation timed out. Terminating.
May 20 07:30:16 rx560 systemd[1]: boinc-client.service: Failed with result 'timeout'.
May 20 07:30:16 rx560 systemd[1]: Failed to start Berkeley Open Infrastructure Network Computing Client.

1 ответ

В вашем [service] раздел добавить эту строку:

TimeoutSec=infinity

Для получения дополнительной информации: Как изменить значение времени ожидания службы systemd?

Тем не менее, вы намеренно вкладываете 60-секундную задержку в свой стартап, и, возможно, есть лучший способ...

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