仅授权应用程序一次以 root 身份运行的方法

仅授权应用程序一次以 root 身份运行的方法

我刚刚编写了一个小应用程序,可以修改目录中的文件/sys。基本上,修改文件/sys/class/backlight/intel_backlight/brightness是为了调整亮度。因此它需要 root 权限。该应用程序是用 C++ 编写的,我正在使用该system函数运行 echo 命令(我只想要最简单的解决方案)。我想知道我是否可以授权该应用程序一次,然后无论何时启动它,它都会以 root 身份运行。我不希望该应用程序每次启动时都请求 root 权限。

编辑:

$ ls -l 
-rwxrwxr-x 1 res res 413934 Jul  6 22:08 BrightnessControl

谢谢。

答案1

https://stackoverflow.com/questions/6905697/how-to-run-script-as-another-user-without-password 查看 visudo 答案 [使用 sudo visudo 编辑 sudoers 文件]

并使其以 root 身份运行该文件而无需询问。 https://help.ubuntu.com/community/Sudoers

答案2

也许我理解错了,但我认为 suid 位正是你所需要的。首先,将程序的所有者更改为 root,然后

chmod +s <filename>

它。

这样,无论哪个用户启动它,它都会以文件所有者的帐户运行。

相关内容