0

私のubuntuサーバーはsshキーによるログインサーバーで、ユーザーはubuntuです。
tomcat ユーザーは tomcat で、パスワードは tomcat です。
FabricでTomcatを起動したい。私の方法はこのようなものです。ログインユーザーはubuntuで、ユーザーtomcatをsuしたいです。su: must be run from a terminal
しかし、削除するpty=False
とエラーが発生しましstartup.shたが、ファブリックの仕上げ後に閉じます。

suuser(user='tomcat',pwd='tomcat',command= '/data/tomcat/%s/bin/startup.sh '%port,pty=False)

def suuser(user,pwd,command='',pty=True):

    with settings(password= "%s" % pwd,
        sudo_prefix="su  %s -c " % user,
        sudo_prompt="Password:"):
        sudo(command,pty=pty)
4

1 に答える 1

0

次のようにコマンドへのpty=False追加を削除します。set -m

command= 'set -m; /data/tomcat/%s/bin/startup.sh '

set -mジョブ制御をオンにすると、別のプロセス グループでプロセスを実行できます。

于 2014-07-23T06:13:58.513 に答える