乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Linux/Unix shell內(nèi)嵌expect自動配置多臺主機SSH互信

       guli3057 2014-06-24
      在自動化測試,或者Oracle RAC安裝過程中,需要配置主機之間SSH 無密碼訪問,當有多臺主機時,配置起來很麻煩,網(wǎng)上的很多類似腳本拿到本機有問題,所以自己寫了一個:
         

      1. #!/bin/bash

      2. NUM_OF_NODES=
      3. NODE1=""
      4. NODE2=""
      5. NODE3=""
      6. NODE4=""
      7. NODE5=""

      8. USER=root
      9. EXPECT=/usr/bin/expect
      10. PASSWD=""
      11. #USER_PROMPT="*$ "
      12. USER_PROMPT="*# "

      13. if [ "x${NODE1}" == "x" -o "x${USER}" == "x" -o "x${PASSWD}" == "x" ]; then
      14.     echo ""
      15.     echo "Please set the NODE INFO, USER and PASSWD"
      16.     echo "then $0 to start..."
      17.     exit 1
      18. fi

      19. declare -i l_i=1
      20. while [ $l_i -le $NUM_OF_NODES ]
      21. do
      22.     eval l_current_node=\$NODE$l_i
      23.     
      24.     $EXPECT <<EOF
      25.     spawn ssh $USER@$l_current_node
      26.     expect "*(yes/no)?*" {
      27.         send -- "yes\r"
      28.         expect "*?assword:*"
      29.         send -- "$PASSWD\r"
      30.     } "*?assword:*" {send -- "$PASSWD\r"}
      31.     expect "$USER_PROMPT"
      32.     send -- "ssh-keygen -t rsa -q -f ~/.ssh/id_rsa -P '' \r"
      33.     expect "*Overwrite (yes/no)? " {
      34.         send -- "yes\r"
      35.     } "$USER_PROMPT" {send -- "\r"}
      36.     expect "$USER_PROMPT"
      37.     send -- "cat ~/.ssh/id_rsa.pub | ssh $USER@$NODE1 'cat - >> ~/.ssh/authorized_keys' \r"
      38.     expect "*(yes/no)?*" {
      39.         send -- "yes\r"
      40.         expect "*?assword:*"
      41.         send -- "$PASSWD\r"
      42.     } "*?assword:*" {send -- "$PASSWD\r"}
      43.     expect "$USER_PROMPT"
      44.     send -- "exit\r"
      45. EOF
      46.     ((l_i++))
      47. done

      48. declare -i l_n=1
      49. while [ $l_n -le $NUM_OF_NODES ]
      50. do
      51.     eval l_current_node=\$NODE$l_n
      52.     $EXPECT <<EOF

      53.     spawn ssh $USER@$NODE1
      54.     expect "*?assword:*" {
      55.         send -- "$PASSWD\r"
      56.         expect "$USER_PROMPT"
      57.     } "$USER_PROMPT" {send -- "scp ~/.ssh/authorized_keys $l_current_node:~/.ssh/ \r"}
      58.     expect "*?assword:*"
      59.     send -- "$PASSWD\r"
      60.     expect "$USER_PROMPT"
      61.     send -- "exit\r"
      62. EOF
      63.     ((l_n++))
      64. done   

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多