LINUX.ORG.RU

История изменений

Исправление intelfx, (текущая версия) :

Если в конце ExecStart я добавлю «&» это будет считаться за демонизацию?

Нет, systemd — это не sh, и шелловые конструкции он не интерпретирует.

Задача выдать при старте «failed to start some_shit, see systemctl status shit.service» если что-то пошло не так.

Понимаешь, тут есть принципиальная проблема. systemd не знает и не может знать, в какой момент у some_shit заканчивается запуск и начинается непосредственно работа. То есть: если сервис упал через 2 миллисекунды — это он упал, потому что не смог распарсить конфиг или потому что он распарсил конфиг, запустился и успел крашнуться? А если через 500 миллисекунд? А через 5000? Сколько systemctl start должен ждать краша, прежде чем говорить «мы запустились» и возвращать управление пользователю?

Если сервис не сообщает systemd, в какой момент он закончил запускаться и начал работать — эта задача принципиально не решается.

Исправление intelfx, :

Если в конце ExecStart я добавлю «&» это будет считаться за демонизацию?

Нет, systemd — это не sh, и шелловые конструкции он не интерпретирует.

Задача выдать при старте «failed to start some_shit, see systemctl status shit.service» если что-то пошло не так.

Понимаешь, тут есть принципиальная проблема. systemd не знает и не может знать, в какой момент у some_shit заканчивается запуск и начинается непосредственно работа. То есть: если сервис упал через 2 миллисекунды — это он упал, потому что не смог распарсить конфиг или потому что он распарсил конфиг, запустился и успел крашнуться? А если через 500 миллисекунд? А через 5000? Сколько systemctl start должен ждать краша, прежде чем возвращать управление пользователю?

Если сервис не сообщает systemd, в какой момент он закончил запускаться и начал работать — эта задача принципиально не решается.

Исправление intelfx, :

Если в конце ExecStart я добавлю «&» это будет считаться за демонизацию?

Нет, systemd — это не sh, и шелловые конструкции он не интерпретирует.

Задача выдать при старте «failed to start some_shit, see systemctl status shit.service» если что-то пошло не так.

Понимаешь, тут есть принципиальная проблема. systemd не знает и не может знать, в какой момент у some_shit заканчивается запуск и начинается непосредственно работа. То есть: если сервис упал через 2 миллисекунды — это он упал, потому что не смог распарсить конфиг или потому что он распарсил конфиг, запустился и успел крашнуться? А если через 500 миллисекунд? А через 5000?

Если сервис не сообщает systemd, в какой момент он закончил запускаться и начал работать — эта задача принципиально не решается.

Исходная версия intelfx, :

Если в конце ExecStart я добавлю «&» это будет считаться за демонизацию?

Нет, systemd — это не sh, и шелловые конструкции он не интерпретирует.