我刚刚编写了一个小应用程序,可以修改目录中的文件/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>
它。
这样,无论哪个用户启动它,它都会以文件所有者的帐户运行。