正如标题所示 - 我想允许非 root 用户执行特定命令,但不是二进制文件。例如:
# killall sshd
但不允许终止任何进程。
答案1
您可以使用 sudo。此命令非常灵活,允许您指定确切的命令和用户,以便能够使用升级的权限
答案2
您可以将用户添加到/etc/sudoers
(从 编辑/etc/passwd
,那是一个错误)
// 允许用户运行命令。
userxyz ALL=(ALL) NOPASSWD: /var/lib/somecommand
// 允许用户运行命令,但将其限制为特定参数。
zuerxyz ALL=(ALL) NOPASSWD: /var/lib/command ARG1 ARG2 ARG3
我确信你还可以做更多,但这应该能让你行动起来。