我可以代表另一个用户sudo一个命令吗?

我使用的是drupal和Aegir。 Aegir自动化许多网站创build任务。 Aegir拥有Apache的控制权,我是root用户,我想重启Apache服务器,但是我想代表Aegirs。 不幸的是我不知道Aegir的密码,所以基本上我想知道如何作为另一个用户sudo的东西。

sudo -u <username> <command> 

sudo接受一个用户参数,它将以该用户身份运行。

另外,既然你是根:

 su <username> -c <command> 

su aegir是你要找的,假设用户名是aegirman su会给你更多的su命令的信息。

如果用户在端口80上运行,该用户可能无法真正重启Apache,除非特别configuration为允许这样做。 默认情况下, root是唯一可以将服务绑定到低端口号的用户。

你应该可以做到以下几点

runuser -l <username> -c <command>

例如

runuser -l Aegir -c service httpd restart

但是,如果你是root用户,你可以直接input密码。

su -l Ageir

Ĵ