以root身份自动运行二进制

我有root权限

我怎样才能让一个没有权限的普通用户以root身份运行一个二进制文件?

我试图给它根:与chown的轮子,但是这并没有让一般用户做我想要的东西。

chown更改所有者,但不会使二进制运行为文件所有者。 chmod u+s会这样做。 chmod g+s会使二进制文件在一些系统上运行(你没有提到你运行的是什么系统)。 这些标志对其他文件,特别是文件夹有不同的影响。 在潜水之前,你应该好好看看man chmodman chown

你也应该强烈的考虑使用sudo而不是二进制suid。 当一个二进制文件被suid时,任何可以访问这个二进制文件的人都可以作为该文件的所有者运行它。 如果您不小心让普通用户向二进制文件写入权限,那么他们可以将其replace为任何需要并以root身份运行的文件。 sudo解决这些安全问题的代价是要求用户将sudo预先join到他们想要以root身份运行的命令中。 您还必须使用适当的权限设置sodoers文件。

运行: – visudo (编辑configuration文件): –

然后编辑configuration文件即sudoers文件: – USERNAME ALL = NOPASSWD: /path/to/binaryfile

保存文件,然后你可以运行二进制文件,而不需要任何密码运行: –

sudo "command to run binary file ”。