0
我的ubuntu服務器是通過ssh密鑰登錄的服務器,用戶是ubuntu。
和tomcat用戶是tomcat,密碼是tomcat。
我想通過Fabric啓動tomcat。 和我的方法是這樣的,登錄用戶是ubuntu,並且想要su用戶tomcat; 但我有一個錯誤su: must be run from a terminal
如果我刪除了pty=False
它將運行startup.sh
但織物整理後,將關閉。如何使用sudo作爲另一個用戶啓動tomcat?
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)
remove pty = False並將startup.sh放在命令後面。 suuser(user ='tomcat',pwd ='tomcat',command ='/data/tomcat/%s/bin/startup.sh&'%port) –
remove pty = False並添加它運行sh但tomcat didn在設置登錄到服務器的env變量之後,使用run(「su - tomcat&/data/tomcat/{port}/bin/startup.sh」)啓動 – Reilost
而不是suuser命令。 –