Запускать дочерние процессы от имени другого пользователя из давно запущенного процесса Python

У меня есть долго работающий, демонизированный процесс Python, который использует подпроцесс для порождения новых дочерних процессов, когда происходят определенные события. Длительный процесс запускается пользователем с привилегиями суперпользователя. Мне нужно, чтобы дочерние процессы, которые он порождает, запускались от имени другого пользователя (например, «никто»), сохраняя привилегии суперпользователя для родительского процесса.

Я сейчас пользуюсь

su -m nobody -c <program to execute as a child>

но это кажется тяжелым и не умирает очень чисто.

Есть ли способ сделать это программно вместо использования su? Я смотрю на методы os.set * uid, но документация в библиотеке Python std довольно редкая в этой области.

Ответы на вопрос(4)

Ваш ответ на вопрос