亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 28520 | 回復(fù): 7
打印 上一主題 下一主題

在shell腳本里如何使用SSH 登陸遠(yuǎn)程主機(jī) [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2011-05-18 16:08 |只看該作者 |倒序?yàn)g覽
本帖最后由 situxiaoquan1 于 2011-05-19 18:33 編輯

我的腳本如下:
#!/usr/bin/expect -f

for {set IP 11} {$IP<=14} {incr i 3}
{
spawn ssh $IP
expect "login*"
send "db2inst1\r"
expect "Password:"
send "db2inst1\r"
expect "*>*"
send "cd /home/db2inst1/weihu/activemobile/sorting\r"
expect "*>*"
send "rm 1.txt\r"
expect "*>*"
send "exit\n"
expect eof
}
目前只是登陸一臺(tái)主機(jī)可以實(shí)現(xiàn)了,想循環(huán)登陸多臺(tái)執(zhí)行相同命令怎么做?
執(zhí)行腳本報(bào)錯(cuò):
wrong # args: should be "for start test next command"
    while executing
"for {set IP 11} {$IP<=14} {incr i 3}"
    (file "./test.sh" line 3)

expect循環(huán)應(yīng)該怎么寫呢?

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2011-05-18 16:09 |只看該作者
expect  搜把

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2011-05-18 20:16 |只看該作者
最好配置sshkey

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2011-05-19 12:01 |只看該作者
#!/bin/bash
Username="test"

for IP in `cat ./ipinfo.txt`
do
  ssh $Username@$IP "cd /home/test;pwd;ls"
done

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2011-05-19 12:04 |只看該作者
本帖最后由 Antonio_Zhao 于 2011-05-19 12:06 編輯

建議你使用SSH免密碼登陸環(huán)境,這樣你就不用再處理密碼的問題了。

1.ssh 的用戶配置主目錄為 $USERHOME/.ssh
2.要設(shè)置ssh的信任關(guān)系必須生成密鑰,密鑰分為一對(duì),一個(gè)是私鑰,一個(gè)是公鑰 。
私鑰存儲(chǔ)在主登陸主機(jī),公鑰存儲(chǔ)在所有被登陸主機(jī)。
3.確保系統(tǒng)的 /etc/inet/hosts 文件中有雙方機(jī)器的主機(jī)名和IP地址的影射。
4.密鑰的生成使用ssh-keygen 命令。適用與SSH版本1
5.ssh-keygen -t dsa for version 2

--------------------------------------------------------------------------------
root@wkst3 # ssh-keygen
Enter file in which to save the key(//.ssh/id_rsa): mykey                       
#為你的密鑰起一個(gè)名字
Generating public/private rsa key pair.&nbsp;                                       
#創(chuàng)建密鑰
Enter passphrase(empty for no passphrase):                                       
#輸入你對(duì)密鑰訪問的密碼,如果需要免密碼登錄,密鑰訪問密碼請(qǐng)留空
Enter same passphrase again:                                               
#確認(rèn)你對(duì)密鑰訪問的密碼,如果需要免密碼登錄,密鑰訪問密碼請(qǐng)留空
Your identification has been saved in mykey                                       
#生成的私鑰的文件名為mykey
Your public key has been saved in mykey.pub.                                       
#生成的公鑰的文件名為mykey.pub
The key fingerprint is:
md5 1024 a0:32:f6:73:f1:bd:d2:12:b1:00:37:25:6c:40:01:0d
root@wkst3 #ls
mykey &nbsp;&nbsp;&nbsp;mykey.pub

--------------------------------------------------------------------------------
步驟:
1.&nbsp; 首先在本地主機(jī)用戶主目錄下創(chuàng)建.ssh目錄
2.&nbsp; 修改.ssh目錄的權(quán)限為700
3.&nbsp; 在.ssh目錄下創(chuàng)建密鑰對(duì),如果需要免密碼登錄,那么在生成密鑰對(duì)的時(shí)候,
密鑰訪問密碼請(qǐng)留空。這里用密鑰對(duì)mykey / mykey.pub 舉例說明
4.&nbsp; 將mykey 改名為identity
5.&nbsp; 修改 identity 的權(quán)限值改為600
6.&nbsp; <以下為遠(yuǎn)程主機(jī)設(shè)置>
7.&nbsp; 登陸到你要信任登陸的遠(yuǎn)程主機(jī)的用戶主目錄下,創(chuàng)建.ssh目錄
8.&nbsp; 修改.ssh目錄的權(quán)限為700
9.&nbsp; 將mykey.pub 文件拷貝到.ssh 目錄中
10.&nbsp;創(chuàng)建$USERHOME/.ssh/authorized_keys 文件。
     將mykey.pub 文件的內(nèi)容導(dǎo)入到authorized_keys 文件中.
       # cat mykey.pub >> authorized_keys
       將 authorized_keys 的權(quán)限值修改為644

論壇徽章:
0
6 [報(bào)告]
發(fā)表于 2011-05-19 16:06 |只看該作者
回復(fù) 4# Antonio_Zhao


    運(yùn)行腳本后提示:
  Password:
   就不動(dòng)了,怎么輸入密碼呢?

論壇徽章:
0
7 [報(bào)告]
發(fā)表于 2011-05-19 16:25 |只看該作者
本帖最后由 linenoise77 于 2011-05-19 16:27 編輯

#!/usr/bin/expect
set timeout 20
if {$argc < 1} {
  puts "Usage: script IP"
  exit 1
}

foreach IP  $argv {
spawn  ssh user@$IP
expect \
  "(yes/no)?" {
    send "yes\r"
    expect "password" {
      send "yourpassword\r"
    }
  } "password" {
    send "yourpassword\r"
}
expect "\$?"
send "last\r"
expect "\$?"
sleep 10
send "exit\r"
expect eof
}

論壇徽章:
0
8 [報(bào)告]
發(fā)表于 2011-05-23 14:58 |只看該作者
回復(fù) 1# situxiaoquan1


    問題已解決:
   正確腳本如下:
   #!/usr/bin/expect -f
foreach ip {
192.168.1.11
192.168.1.14
。。。。。#多個(gè)IP地址
} {
spawn ssh $IP
expect "login*"
send "db2inst1\r"
expect "Password:"
send "db2inst1\r"
expect "*>*"
send "cd /home/db2inst1/weihu/activemobile/sorting\r"
expect "*>*"
send "rm 1.txt\r"
expect "*>*"
send "exit\n"
expect eof
}
可以通過SSH方式順序登陸多臺(tái)主機(jī)執(zhí)行命令
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP