2014-02-15 180 views
1
#!/bin/csh 
ssh -o StrictHostKeyChecking=no [email protected] 
sudo -su rootuser 
ksh 
. /mydir/setup_env.ksh 
ls -ltr 

以上是我需要做的任務列表。外殼腳本Sudo在遠程機器和執行命令

  1. 登錄到遠程機器沒有密碼提示
  2. 運行sudo來獲得訪問根
  3. 變化的ksh
  4. 使用LS執行腳本(setup_env.ksh)
  5. 列出文件-ltr

當我執行這個腳本,可以說localunixmachine.com ...

  1. 它問我密碼
  2. 一旦我輸入密碼,它會傳送到遠程計算機,但不會執行剩餘命令
  3. 如果從遠程會話我退出,它會執行其餘的命令。

你可以請指導我什麼是最好的方式來完成我在這裏嘗試。

回答

0

首先你可以複製你的ssh,你可以生成ssh-keygen到AUTHORIZED_KEYS到遠程服務器根目錄/的.ssh/authorized_keys中 然後公鑰腳本將

ssh [email protected] "/bin/ksh mydir/setup_env.ksh" 
0

我認爲這應該執行工作多個遠程命令:

#!/bin/bash 
ssh -o StrictHostKeyChecking=no [email protected] <<EOF 
sudo -su rootuser 
ksh 
. /mydir/setup_env.ksh 
ls -ltr 
EOF 

至於登錄到服務器沒有密碼,你需要設置密鑰的SSH認證。