我的用户是“peaagent”。我尝试了visudo -f /etc/sudoers.d/peaagent
以下操作:
peaagent ALL = (root) NOPASSWD: /bin/systemctl stop postgresql.service
当我尝试以 peaagent 身份停止 Postgresql 时,它提示我输入密码:
peaagent@myserver:~$ /bin/systemctl stop postgresql.service
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
Authentication is required to stop 'postgresql.service'.
Authenticating as: root
Password:
有人知道为什么这不起作用吗?Tx。
答案1
您的问题是您没有在命令前加上前缀sudo
。当您尝试在没有足够权限的情况下运行 systemd 命令时,systemd 会要求输入具有适当权限的帐户的密码(通过 systemd-ask-password)。
sudo /bin/systemctl stop postgresql.service
应该做你想做的事。