Mark Asked: 2023-09-09 05:18:07 +0800 CST2023-09-09 05:18:07 +0800 CST 2023-09-09 05:18:07 +0800 CST 是否可以在不使用 sudo 的情况下向用户授予特定权限? 772 我不会添加sudoRPi 3 B+ 的 Buildroot 环境,因为我只需要apache2使用date -s TIME. 有没有办法在不安装和配置的情况下授予此权限sudo? sudo 1 个回答 Voted Best Answer Stephen Harris 2023-09-09T07:01:11+08:002023-09-09T07:01:11+08:00 我可以想到两种方法来做到这一点。 对于两者,您都需要编写和编译一个程序来完成您想要的工作(例如调用stime(2))。你不能date直接打电话。 并且您需要一个只有运行 apache2 ( www-data?) 的用户所在的组。在这两种情况下,我们都将执行程序的能力限制在指定的组中,因此其他人都无法运行它。 选项 1:使其成为 setuid root chown root.thegroup yourprogram chmod 4710 yourprogram 现在只有组内的人才能执行该程序,并且它以有效root身份运行。 选项 2:使用功能 chown root.thegroup yourprogram chmod 710 yourprogram setcap cap_sys_time=pe yourprogram 这将授予您的程序调用 settimeofday(2)、stime(2) 和 adjtimex(2) 的权限,而无需 root 权限。 但sudo解决方案是最简单的...
我可以想到两种方法来做到这一点。
对于两者,您都需要编写和编译一个程序来完成您想要的工作(例如调用
stime(2)
)。你不能date
直接打电话。并且您需要一个只有运行 apache2 (
www-data
?) 的用户所在的组。在这两种情况下,我们都将执行程序的能力限制在指定的组中,因此其他人都无法运行它。选项 1:使其成为 setuid root
现在只有组内的人才能执行该程序,并且它以有效root身份运行。
选项 2:使用功能
这将授予您的程序调用 settimeofday(2)、stime(2) 和 adjtimex(2) 的权限,而无需 root 权限。
但
sudo
解决方案是最简单的...