systemd не ограничивает разрешения на услуги по умолчанию, поэтому я не думаю, что это проблема. В tupmanpage упоминаются три возможных условия daemon(7):
Была предпринята попытка переместить процесс в группу процессов на другом сеансе или изменить идентификатор группы процессов одного из дочерних узлов вызывающего процесса, а ребенок находился в другом сеансе или изменить идентификатор группы процессов руководитель сессии (
tup,fork).
Я думаю, что третий из них является наиболее вероятной причиной ошибки: tupвероятно, ожидается, что он будет запущен из оболочки, и в этом случае оболочка будет лидером сессии и tupпопытается создать свою собственную группу процессов, но systemd помещает каждую службу в свои собственные сеанс как часть настройки чистой среды выполнения для службы (см. также ExecStart=/bin/sh -c '/usr/bin/tup monitor -f' ), чтобы этот шаг завершился неудачно.
Если вы не можете каким-то образом отключить этот шаг tup(ему forkтоже не нужно или делать некоторые другие вещи, которые система делает ненужными), я думаю, что единственным обходным решением будет уродливый взлом:
tup
При этом лидером сессии будет оболочка, а не tup, поэтому она setpgidдолжна работать снова.