您的位置:首页 > 其它

tools save the logs during su procedure

2015-06-30 09:37 28 查看
"ts" 5 lines, 235 characters

#!/bin/bash

#logsaver tat07 2 apply-comit-backout-bld1 R2711.01.38

#logsaver tat04 2 apply-reapply-commit-so-bld3 R2860.01.26

logsaver qisc2 2 apply-commit-backout-bld2 R3022.01.0120

#logsaver tat04 2 apply-backout-bld6 R3022.01.0100

***********************

#!/bin/bash

lss1un="alzhong"

lss1pw="allen211"

tat07=(tat07 135.111.57.66 135.111.57.67 4)

tat04=(tat04 135.1.68.238 135.1.68.239 4)

qtat1=(qtat1 135.252.132.162 135.252.132.163 2)

qisc2=(qisc2 135.251.159.65 135.251.159.66 2)

if [[ ! -d "dist" ]]; then

mkdir "dist";

fi

if [[ "${1}" = "tat07" ]];then

lab=(${tat07[@]})

elif [[ "${1}" = "tat04" ]];then

lab=(${tat04[@]})

elif [[ "${1}" = "qisc2" ]];then

lab=(${qisc2[@]})

else

lab=(${qtat1[@]})

fi

echo ${lab[@]}

#host lab load mi1 mi2 keyword level

saver 135.1.29.10 $1 $4 ${lab[1]} ${lab[2]} $3 $2 ${lss1un} ${lss1pw}

********************************

#!/opt/exptools/bin/expect

set rhost [lindex $argv 0]

set lab [lindex $argv 1]

set load [lindex $argv 2]

set mi1 [lindex $argv 3]

set mi2 [lindex $argv 4]

set keyword [lindex $argv 5]

set lever [lindex $argv 6]

set handle [lindex $argv 7]

set passwd [lindex $argv 8]

#save master.log in both im1 and mi2 to /storage/$handle

proc level_1 {mi1 mi2 keyword handle passwd} {

set timeout 3

spawn telnet $mi1

expect "login:"

send "root\r"

expect "Password:"

send "newsys\r"

expect "day:"

send "\r\r"

expect "root:"

send "mkdir -p /storage/$handle;cp -r ~lss/logs/master.log /storage/$handle/master-$keyword-mi1.log;chmod 7

77 /storage/$handle -R\r"

expect "root:"

send "exit\r"

spawn telnet $mi2

expect "login:"

send "root\r"

expect "Password:"

send "newsys\r"

expect "day:"

send "\r\r"

expect "root:"

send "mkdir -p /storage/$handle;cp -r ~lss/logs/master.log /storage/$handle/master-$keyword-mi2.log;chmod 7

77 /storage/$handle -R\r"

expect "root:"

send "cp /storage/sim/log/update/sim.log /storage/$handle/sim-$keyword.log\r"

expect "root:"

send "exit\r"

interact

}

#save master.log in both mi1 and mib to lsslogin1 /home/$handle/lab/load/

proc level_2 {rhost lab load mi1 mi2 keyword handle passwd} {

set timeout 3

spawn telnet $rhost

expect "login:"

send "$handle\r"

expect "Password:"

send "$passwd\r"

expect "$handle:"

send "mkdir -p logs/$lab/$load\r"

expect "$handle:"

send "ftp $mi1\r"

expect "):"

send "root\r"

expect "Password:"

send "newsys\r"

expect "ftp>"

send "bin\r"

expect "ftp>"

send "hash\r"

expect "ftp>"

send "cd /export/home/lss/logs/\r"

expect "ftp>"

send "get master.log /home/$handle/logs/$lab/$load/master-$keyword-mi1.log\r"

expect "ftp>"

send "bye\r"

expect "$handle:"

send "ftp $mi2\r"

expect "):"

send "root\r"

expect "Password:"

send "newsys\r"

expect "ftp>"

send "bin\r"

expect "ftp>"

send "hash\r"

expect "ftp>"

send "cd /export/home/lss/logs/\r"

expect "ftp>"

send "get master.log /home/$handle/logs/$lab/$load/master-$keyword-mi2.log\r"

expect "ftp>"

send "get /storage/sim/log/update/sim.log /home/$handle/logs/$lab/$load/sim-$keyword.log\r"

expect "ftp>"

send "bye\r"

send "chmod -R 755 /home/$handle/logs/$lab/$load;cd /home/$handle/logs/$lab/$load;ls\r"

interact

}

#do get_logs in standby mi and save the logs to lsslogin1

proc level_3 {rhost lab load mi1 mi2 keyword handle passwd} {

set timeout 3

spawn telnet $rhost

expect "login:"

send "$handle\r"

expect "Password:"

send "$passwd\r"

expect "$handle:"

send "mkdir -p logs/$lab/$load\r"

expect "$handle:"

send "ftp $mi1\r"

expect "):"

send "root\r"

expect "Password:"

send "newsys\r"

expect "ftp>"

send "bin\r"

expect "ftp>"

send "hash\r"

expect "ftp>"

send "cd /export/home/lss/logs/\r"

expect "ftp>"

send "get master.log /home/$handle/logs/$lab/$load/master-$keyword-mi1.log\r"

expect "ftp>"

send "bye\r"

expect "$handle:"

send "ftp $mi2\r"

expect "):"

send "root\r"

expect "Password:"

send "newsys\r"

expect "ftp>"

send "bin\r"

expect "ftp>"

send "hash\r"

expect "ftp>"

send "cd /export/home/lss/logs/\r"

expect "ftp>"

send "get master.log /home/$handle/logs/$lab/$load/master-$keyword-mi2.log\r"

expect "ftp>"

send "get /storage/sim/log/update/sim.log /home/$handle/logs/$lab/$load/sim-$keyword.log\r"

expect "ftp>"

send "bye\r"

send "chmod -R 755 /home/$handle/logs/$lab/$load;cd /home/$handle/logs/$lab/$load;ls\r"

interact

}

if {$lever == 1} {

level_1 $mi1 $mi2 $keyword $handle $passwd;

} elseif {$lever == 2} {

level_1 $mi1 $mi2 $keyword $handle $passwd;

level_2 $rhost $lab $load $mi1 $mi2 $keyword $handle $passwd;

} else {

level_1 $mi1 $mi2 $keyword $passwd;

level_2 $rhost $lab $load $mi1 $mi2 $keyword $handle $passwd;

#puts "level 3 have not been completed, just finish to level 2!!"

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: