This is an old revision of the document!
Как всегда запускать программу с правами root
Если необходимо, чтобы программа всегда запускалась с правами root, даже если она запущена не от имени root, а обычным непривилешированным пользователем без использования sudo, то нужно использовать функционал setuid или setgid. Это означает, что программа будет запущена не от имени пользователя, который ее запускат, а от имени владельца исполняемого файла.
Установить признак setuid можно так:
sudo chown root:root ./program sudo chmod a+s ./program
Всё. Теперь даже если процесс запущен непривилегированным пользователем, он всё равно получит привилегии владельца исполняемого файла, то есть - root
Discussion