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

使用しようとしているユーザーがサーバーのsudoerscfgに追加されていますか?これを試して

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

ソース

于 2012-11-10T10:00:27.273 に答える