有沒有什麼辦法可以在不關閉當前會話的情況下使用capistrano進行部署時(切換到root用戶)?(會話是使用ssh密鑰啓動的)?用capistrano部署時切換用戶?
所以我想用用戶foo開始部署,然後切換到root然後執行一些命令。
感謝您的回答!
有沒有什麼辦法可以在不關閉當前會話的情況下使用capistrano進行部署時(切換到root用戶)?(會話是使用ssh密鑰啓動的)?用capistrano部署時切換用戶?
所以我想用用戶foo開始部署,然後切換到root然後執行一些命令。
感謝您的回答!
我相信sudo
是你所需要的
你不說,你要運行的命令爲根。在本地系統上?在遠程系統上?
capistrano中的每個「運行」類命令都使用單獨的新的ssh連接。如上所述,「sudo」是以root身份運行一組語句的官方方式。
如果你很樂意給Root一個ssh密鑰以便能夠通過ssh直接登錄,你可以指定一個用戶ssh over。但我不會推薦它。
在沒有「sudo」(嘆息)的Solaris環境中,我們改爲使用pfexec。
你的用戶應該是sudoers組之前。
然後使用它:
task :specific_sudo_take do
run 'sudo -c sh "whoami' #put your sudo command here
end
我會使用內置的'sudo'命令這個... – severin
我希望這能回答你的問題:http://stackoverflow.com/questions/22054076/capistrano-3-change-ssh-options-inside-task/23569541#23569541 – activars