5

我正在尝试对远程服务器进行简单的 Rails/Capistrano 部署。不幸的是,我无法sudo开箱即用。我需要在这里部署:

drwxr-xr-x 2 user   www       4096 Sep 28 15:05 my_app_dir

并且 sudoers 已设置为允许我运行sudo su - user,仅此而已。

一些试图将其引入 deploy.rb 的尝试:

set :use_sudo, true
set :sudo, 'sudo su - user'  # fails due to bad su syntax, -c is inserted after user
set :sudo, 'sudo -u user'  # fails because it's not set up
set :sudo, 'sudo su - user -c' # also bad syntax
set :sudo_prompt, ''

我认为最好的选择是:

  1. 启用无密码sudo此处推荐)
  2. Enable sudo -u user,它应该与set :sudo, 'sudo -u user'

有什么方法可以使这项工作保持原样?

4

1 回答 1

1

您尝试使用的用户是否已添加到服务器上的 sudoers cfg 中?尝试这个

run "#{sudo :as => 'bob'} mkdir /path/to/dir"

资源

于 2012-11-10T10:00:27.273 回答