在Linux系統中,我們經常想在A機器上,執行B機器上的SHELL命令。
下面這種方案,是一種流行可靠的方案。
1.SSH無密碼登錄
# 本地服務器執行(A機器):生成密鑰對
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
# 遠程服務器執行(B機器):用公鑰給遠程機器授權,首先需要將本地公鑰拷貝到遠程服務器上,遠程機器授權全後,可以刪除公鑰
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
操作完以後,A機器就可以無密碼SSH到B機器上了
2.執行具體命令
ssh [email protected] "/root/nginx/nginx-1.2.3/sbin/nginx -s reload"