2017-04-21 57 views
0

我有兩臺服務器說服務器A和服務器B.我有一個sudo用戶說user1具有服務器A和B的完整權限。我試圖追加從根crontab條目使用以下命令將服務器A發送到服務器B.但它附加在A.我需要將它追加到服務器B.使用ssh和sudo添加crontab沒有root憑據

請找到我在服務器A上運行的命令,它應該登錄到服務器B並追加B的crontab項。相反,它僅附加在A上。

/usr/bin/sshpass -p 'password' /usr/bin/ssh -o StrictHostKeyChecking=no -l user1 \ 
10.10.10.10 -t 'echo password' | sudo -S bash -c 'echo "30 10 * * * sh test.sh" >> /var/spool/cron/root' 

請幫助

回答

0

附上您要加引號遠程運行,轉義嵌套的報價整個命令 - 否則,管道將在當地解釋。

/usr/bin/sshpass -p 'password' ssh -o StrictHostKeyChecking=no -l user1 10.10.10.10 \ 
-t "echo password | sudo -S bash -c 'echo \"30 10 * * * sh test.sh\" >> /var/spool/cron/root'" 
+0

可否請您提供更改後的命令 – gosatriani

+0

編輯答案。 –

+0

嗨landa,當執行上述命令時,我得到下面的錯誤bash:echo password:command not found – gosatriani