为什么我可以运行命令,但不能使用 sudo?

为什么我可以运行命令,但不能使用 sudo?

我以用户名登录rails并且可以searchd --config /etc/abc.xyz/sphinx.conf

当我这样做时sudo -u rails searchd --config /etc/abc.xyz/sphinx.conf,它返回:

抱歉,不允许用户 rails 在 abc.xyz 上以 rails 身份执行“/usr/bin/searchd --config /etc/abc.xyz/sphinx.conf”。

我该如何使用sudo?我需要它来部署 Capistrano。

答案1

我认为问题出在文件的权限上/etc/abc.xyz/Sphinx.config

我猜你已经为用户设置了权限,但是当你调用

sudo -u rails searchd --config /etc/abc.xyz/sphinx.conf

据我所知,您只能searchd --config以用户 rails 的身份调用该命令,而调用该命令的用户可能没有该文件的访问权限/etc/abc.xyz/sphinx.config

因此授予 sudo 用户对此文件的权限应该可以解决问题。

答案2

将用户添加到 sudo。

adduser rails sudo

相关内容