在Unix或Gnu / Linux上减less进程的权限

我正在编写一个程序,并希望它以降低的权限运行。 我知道作为根我可以做到这一点,但作为一个普通的用户呢。 我可以将用户设置为nobody,而不必先将其设置为root?

Solutions Collecting From Web of "在Unix或Gnu / Linux上减less进程的权限"

不,您不能在没有root权限的情况下将进程的用户更改为nobody

相关的系统调用是setuid(2) , seteuid(2) , setresuid(2) …

(在某个进程中,可能有一种限制新文件操作的特定于Linux的方法,但是我不记得这些细节)

另请参阅SE-Linux , Setuid , 证书(7) , 功能(7)以及阅读高级Linux编程 …

您不需要设置root权限,但必须以root用户或其他管理员用户身份启动该程序。