在没有 sudo 权限的情况下运行 pkill

在没有 sudo 权限的情况下运行 pkill

我想像下面这样运行 pkill。

sudo pkill -u 11002

我无法多次提供 sudo 密码,因此我想在没有 sudo 用户的情况下运行 pkill。为此,我将 pkill 复制到主目录中,命名为 bkill,然后运行以下命令。

sudo setcap "cap_kill+epi" /home/rajesh/bkill

这将赋予该二进制文件终止功能。但每次运行时我都会收到以下消息。

 /home/rajesh/bkill  -u 11002
result: 31270

我使用以下命令检查该用户正在运行的进程。

ps -u 11002

PID TTY          TIME CMD
340 pts/26   00:00:00 ncserver

这表明进程 pid 340 仍在运行。我猜想 cap_kill 不起作用。

所以我尝试了不同的方法。我使用以下命令授予了 sudo 访问权限。

sudo chown root /home/rajesh/bkill
sudo chmod u+s /home/rajesh/bkill

即使这样也行不通。

有人能帮我解决这个问题吗?

答案1

为什么你不授予自己无需密码即可运行 pkill 的权限:

sudo visudo

添加

rajesh ALL = NOPASSWD: /usr/bin/pkill

您仍然需要sudo pkill,但不必输入密码。

相关内容