В init-скрипте syslog-ng при рестарте делается проверка конфига и рестрт не выполняется, если что-то пошло не так: do_config_sanity_check() { action "Checking syslog-ng configuration:" "$DAEMON" -s || exit } restart() { do_config_sanity_check stop start } Надо бы сделать то же самое в unit-файле.
Такую проверку наверное разумно сделать в ExecStartPre=. Специально для рестарта вроде ничего такого нет.
(In reply to comment #1) Disregard that, откомментировал не туда.