4

Fabric を使用してサーバーを起動すると、postgresql を起動しようとする試みを除いて、すべてがうまく機能します。

sudo("/usr/lib/postgresql/9.1/bin/pg_ctl -D /mnt/ebs/postgresql/data -l /mnt/ebs/logfile start", user='postgres')

「サーバー起動中」と出力されますが、実際には起動しません。postgresql ログには何も表示されません。

ユーザーと同じコマンドをsshして実行すると、機能postgresします。ssh して以下を実行すると、同様に機能します。

 sudo su postgres -c '/usr/lib/postgresql/9.1/bin/pg_ctl -D /mnt/ebs/postgresql/data -l /mnt/ebs/logfile start

ファブリックのユーザーのやり方について、私が理解していないことは何ですか? それともLinuxユーザーの働き方?

4

1 に答える 1

3

ユースケースのドキュメントのセクションを次に示します。これは sudo ではなく、デフォルト呼び出しの pty 設定に関連しています。詳細については、よくある質問をご覧ください。

于 2012-04-13T16:26:42.613 に答える