settimeout60
spawn$login_server_command
expect{
"*yes/no"{send"yes\r";exp_continue}
"*password:
"{send"$server_password\r"}
}
expect"Permissiondenied,pleasetryagain."{exit}
expect"#"{send"cd$CheckScriptPath;./checksh.sh$gather_server_ip$gather_server_password\r"}
expecteof
exit
EOF
done
checksh.sh
#!
/bin/bash
########################################################################################
#Function:
#Thisscriptchecksthesystem'sinformation,disks'sinformation,performance,etc...ofthe
#server
#
#Author:
#ByJackWang
#
#Company:
#ShaanXiGreatWallInformationCo.,Ltd.
########################################################################################
########################################################################################
#
#GatherServerIpAddressistheserver'sIPaddressthatgatherthecheckinglog
#GatherServerPasswordistheserver'sIPaddressthatgatherthecheckinglog
#
########################################################################################
GatherServerIpAddress=$1
GatherServerPassword=$2
########################################################################################
#GetTheIpCommandisacommandthatyoucangettheIPaddress
########################################################################################
GetTheIpCommand=`ifconfig|grep'\([[:
digit:
]]\{1,3\}\.\)\{3\}[[:
digit:
]]\{1,3\}'--color=auto-o|sed-e'2,5d'`
########################################################################################
#LogNameisacommandthatYourlogs'name
########################################################################################
LogName=`ifconfig|grep'\([[:
digit:
]]\{1,3\}\.\)\{3\}[[:
digit:
]]\{1,3\}'--color=auto-o|sed-e'2,5d'``echo"-"``date+%Y%M%d`
########################################################################################
#
#GatherLogPathisapaththatcollectinglogpath
#LocalServerLogPathislocallogpath
#
########################################################################################
GatherServerLogPath="/tmp/GatherLogDirectory"
LocalServerLogPath="/tmp/LocalServerLogDirectory"
########################################################################################
#LinuxOsInformationisfunctionthatusegetocollectOS'sinformation
########################################################################################
LinuxOsInformation(){
Hostname=`hostname`
UnameA=`uname-a`
OsVersion=`cat/etc/issue|sed'2,4d'`
Uptime=`uptime|awk'{print$3}'|awk-F","'{print$1}'`
ServerIp=`ifconfig|grep"inet"|sed'2,4d'|awk-F":
"'{print$2}'|awk'{print$1}'`
ServerNetMask=`ifconfig|grep"inet"|sed'2,4d'|awk-F":
"'{print$4}'|awk'{print$1}'`
ServerGateWay=`netstat-r|grep"default"|awk'{print$2}'`
SigleMemoryCapacity=`dmidecode|grep-P-A5"Memory\s+Device"|grep"Size"|grep-v"Range"|grep'[0-9]'|awk-F":
"'{print$2}'|sed's/^[\t]*//g'`
MaximumMemoryCapacity=`dmidecode-t16|grep"MaximumCapacity"|awk-F":
"'{print$2}'|sed's/^[\t]*//g'`
NumberOfMemorySlots=`dmidecode-t16|grep"NumberOfDevices"|awk-F":
"'{print$2}'|sed's/^[\t]*//g'`
MemoryTotal=`cat/proc/meminfo|grep"MemTotal"|awk'{printf("MemTotal:
%1.0fGB\n",$2/1024/1024)}'|awk-F":
"'{print$2}'`
PhysicalMemoryNumber=`dmidecode|grep-A16"MemoryDevice"|grep"Size:
"|grep-v"NoModuleInstalled"|grep-v"RangeSize:
"|wc-l`
ProductName=`dmidecode|grep-A10"SystemInformation"|grep"ProductName"|awk-F":
"'{print$2}'|sed's/^[\t]*//g'`
SystemCPUInfomation=`cat/proc/cpuinfo|grep"name"|cut-d:
-f2|awk'{print"*"$1,$2,$3,$4}'|uniq-c|sed's/^[\t]*//g'`
echo-e"Hostname|$Hostname\nUnamea|$UnameA\nOsVersion|$OsVersion\nUptime|$Uptime\nServerIp|$ServerIp\nServerNetMask|$ServerNetMask\nServerGateWay|$ServerGateWay\nSigleMemoryCapacity|$SigleMemoryCapacity\nMaximumMemoryCapacity|$MaximumMemoryCapacity\nNumberOfMemorySlots|$NumberOfMemorySlots\nMemoryTotal|$MemoryTotal\nPhysicalMemoryNumber|$PhysicalMemoryNumber\nProductName|$ProductName\nSystemCPUInformation|$SystemCPUInfomation"
}
PerformanceInfomation(){
CPUIdle=`top-d2-n1-b|grepC[Pp][Uu]|grepid|awk'{print$5}'|awk-F"%"'{print$1}'`
CPUloadAverage=`top-d2-n1-b|grep"loadaverage:
"|awk-F":
"'{print$5}'|sed's/^[\t]*//g'`
ProcessNumbers=`top-d2-n1-b|grep"Tasks"|awk-F"[:
]"'{print$3}'`
ProcessRunning=`top-d2-n1-b|grep"Tasks"|awk-F"[:
]"'{print$8}'`
ProcessSleeping=`top-d2-n1-b|grep"Tasks"|awk-F"[:
]"'{print$11}'`
ProcessStoping=`top-d2-n1-b|grep"Tasks"|awk-F"[:
]"'{print$16}'`
ProcessZombie=`top-d2-n1-b|grep"Tasks"|awk-F"[:
]"'{print$21}'`
UserSpaceCPU=`top-d2-n1-b|grep'C[Pp][Uu]'|head-1|awk-F"[:
%]"'{print$4}'`
SystemSpaceCPU=`top-d2-n1-b|grep'C[Pp][Uu]'|head-1|awk-F"[:
%]"'{print$8}'`
ChangePriorityCPU=`top-d2-n1-b|grep'C[Pp][Uu]'|head-1|awk-F"[:
%]"'{print$12}'`
WaitingCPU=`top-d2-n1-b|grep'C[Pp][Uu]'|head-1|awk-F"[:
%]"'{print$19}'`
HardwareIRQCPU=`top-d2-n1-b|grep'C[Pp][Uu]'|head-1|awk-F"[:
%]"'{print$23}'`
SoftwareIRQCPU=`top-d2-n1-b|grep'C[Pp][Uu]'|head-1|awk-F"[:
%]"'{print$27}'`
MemUsed=`top-d2-n1-b|grep"Mem"|awk-F"[:
]"'{print$11}'|tr-d"a-zA-Z"|awk'{printf("%dM\n",$1/1024)}'`
MemFreeP=`top-d2-n1-b|grep"Mem"|awk-F"[:
]"'{print$16}'|tr-d"a-zA-Z"|awk'{printf("%dM\n",$1/1024)}'`
MemBuffersP=`top-d2-n1-b|grep"Mem"|awk-F"[:
]"'{print$22}'|tr-d"a-zA-Z"|awk'{printf("%dM\n",$1/1024)}'`
CacheCachedP=`top-d2-n1-b|grep"Swap"|awk-F"[:
]"'{print$24}'|tr-d"a-zA-Z"|awk'{printf("%dM\n",$1/1024)}'`
CacheTotal=`top-d2-n1-b|grep"Swap"|awk-F"[:
]"'{print$4}'|tr-d"a-zA-Z"|awk'{printf("%dM\n",$1/1024)}'`
CacheUsed=`top-d2-n1-b|grep"Swap"|awk-F"[:
]"'{print$14}'|tr-d"a-zA-Z"|awk'{printf("%dM\n",$1/1024)}'`
CacheFree=`top-d2-n1-b|grep"Swap"|awk-F"[:
]"'{print$18}'|tr-d"a-zA-Z"|awk'{printf("%dM\n",$1/1024)}'`
echo-e"CPUIdle|$CPUIdle\nCPUloadAverage|$CPUloadAverage\nProcessNumbers|$ProcessNumbers\nProcessRunning|$ProcessRunning\nProcessSleeping|$ProcessSleeping\nProcessStoping|$ProcessStoping\nProcessZombie|$ProcessZombie\nUserSpaceCPU|$UserSpaceCPU\nSystemSpaceCPU|$SystemSpaceCPU\nChangePriorityCPU|$ChangePriorityCPU\nWaitingCPU|$WaitingCPU\nHardwareIRQCPU|$HardwareIRQCPU\nSoftwareIRQCPU|$SoftwareIRQCPU\nMemUsed|$MemUsed\nMemFreeP|$MemFreeP\nMemBuffersP|$MemBuffersP\nCacheCachedP|$CacheCachedP\nCacheTotal|$CacheTotal\nCacheUsed|$CacheUsed\nCacheFree|$CacheFree\n"
}
OprateSystemSec(){
echo'======================UserLogin======================'
w
echo'======================FileUsed======================='
df-ah
echo'======================dmesgError====================='
dmesg|greperror
echo'======================dmesgFail======================'
dmesg|grepFail
echo'======================BootLog========================'
more/var/log/boot.log|grep-V"OK"|sed'1,6d'
echo'======================route-n======================='
route-n
echo'======================iptables-L===================='
iptables-L
echo'======================netstat-lntp=================='
netstat-lntp
echo'======================netstat-antp=================='
netstat-antp
echo'======================BootLog========================'
netstat-s
echo'======================netstat-s====================='
last
echo'======================du-sh/etc/==================='
du-sh/etc/
echo'======================du-sh/boot/=================='
du-sh/boot/
echo'======================du-sh/dev/==================='
du-sh/dev/
echo'======================df-h==================