我想在我的所有应用程序服务器上安装gem,但是gem install需要sudo访问权限 - 如何仅在运行此capistrano命令时启用sudo?
换句话说,我不想在我的所有部署配方中使用sudo,就在我在命令行上调用此命令时。
答案 0 :(得分:12)
找到它 - 上限调用COMMAND =“命令,需要sudo ”SUDO = 1
答案 1 :(得分:1)
我不太确定我理解这个问题,但我认为你问的是如何将sudo限制为一个特定的命令而不必为所有Ruby开发人员提供无限的恶作剧容量。
可以设置/ etc / sudoers来限制允许用户以root用户身份调用的命令。它通常设置为ALL,但您只能提供允许命令的列表。
答案 2 :(得分:0)
最好使用unix ACL或类似的权限。为部署用户提供sudoer访问权限,然后您可以调用run "sudo do_something"
,它将仅对该调用进行sudo级访问。