Com uma ressalva, o "caminho certo" para permitir que um programa tenha privilégios de root e seja executado por qualquer usuário, é usar setuid
e setgid
flags passados para chmod
. Este tutorial explica o processo. Você deve ser root para aplicar os sinalizadores setuid
ou setgid
e o programa deve ser de propriedade de root.
A ressalva é que é extremamente inseguro permitir que um usuário execute um programa com privilégios de root. Qualquer exploração no código do programa pode permitir que um usuário comum obtenha privilégios de root. Muitas explorações do Linux ao longo dos anos exploraram um binário binário setuid
para obter um escalonamento de privilégios.
Apenas para fins informativos e educativos, veja como você faz isso:
chown root /usr/bin/myprogram
chmod u+s /usr/bin/myprogram
Mas, como os outros disseram acima, não faça isso!