线上初始换检测

(1) 测试线上机器的环境

1.确认系统信息:

1.1系统发行版

1.2内核发行版

1.3服务器类型

2.确认cpu信息:

   2.1 cpu型号

   2.2 cpu核数

   2.3 cpu个数

   2.4 cpu缓存

3.确认内存信息

4.硬盘信息

5.挂载信息

6.网络信息

7.防火墙信息

8.对硬盘io进行测试

9.部署前列出可以login的所有用户

10. 现在运行的所有进程

11. 现在整在运行的端口和服务

  1 #!/bin/bash 
  2 #This script is used to check the server 
  3 #system info
  4 yum -y install dmidecode 
  5 echo $(date)---------------------------------------系统基本信息------------------------------------------ 
  6 system_info() { 
  7 echo "**********************************************" 
  8 echo "system info:" 
  9 echo 
 10 echo "   System-release : `cat /etc/redhat-release`" 
 11 echo "   Kernel-release : `uname -a|awk '{print $1,$3}'`" 
 12 echo "   Server-Model : `dmidecode | grep "Product Name:"|sed -n '1p'|awk -F': ' '{print $2}'`" 
 13 echo 
 14 } 
 15  
 16  
 17  
 18  
 19 #CPU info 
 20 cpu_info() { 
 21 echo "**********************************************" 
 22 echo "CPU info:" 
 23 echo 
 24 echo "    Frequency : `cat /proc/cpuinfo | grep "model name" | uniq |awk -F': ' '{print $2}'`" 
 25 echo "    CPU cores:  `cat /proc/cpuinfo | grep "cpu cores" | uniq |awk -F': ' '{print $2}'`" 
 26 echo "    Logic Count : `cat /proc/cpuinfo | grep "processor" | sort -u| wc -l `" 
 27 echo "    Physical Count : `cat /proc/cpuinfo | grep "physical" | sort -u| wc -l`" 
 28 echo "    Cache size : `cat /proc/cpuinfo| grep "cache size"|uniq|awk '{print $4,$5}'`" 
 29 echo 
 30 } 
 31  
 32  
 33  
 34  
 35  
 36 #memory info 
 37 mem_info() { 
 38 memory=`dmidecode |grep "Range Size"|head -1|awk '{print $3$4}'` 
 39 mem_size=`echo "This server has ${memory} memory."` 
 40  
 41 echo "**********************************************" 
 42 echo "Memory info:" 
 43 echo 
 44 echo "   Total : ${mem_size}" 
 45 echo "   Count : `dmidecode |grep -A16 "Memory Device$"|grep Size|awk '{if($2!~/No/) print $0}'|wc -l`" 
 46 dmidecode |grep -A20 "Memory Device$"|grep Size|sed '{s/^       */   /g};{/No/d}' 
 47 echo 
 48 } 
 49  
 50  
 51  
 52  
 53  
 54 #disk and partitions 
 55 swap_pos=`cat /proc/swaps|sed -n '2p'|awk '{print $1}'` 
 56 partition_info() { 
 57 echo "**********************************************" 
 58 echo "Hard disk info:" 
 59 echo 
 60 echo "`fdisk -l|grep Disk|awk -F, '{print $1}'`" 
 61 echo "**********************************************" 
 62 echo "Partition info:" 
 63 echo 
 64 df -h | grep -v Filesystem | sed "s:none:${swap_pos}:" 
 65 echo 
 66 } 
 67  
 68  
 69 #network adapter info 
 70 adapter_info() { 
 71  
 72 duplex_eth0=`ethtool eth0 | grep Duplex | awk '{if($2~/Full/) print "Full"};{if($2~/Half/)print "Half"};{if($2~/Uknown!/) print "unknown"}'` 
 73  
 74 duplex_eth1=`ethtool eth1 | grep Duplex | awk '{if($2~/Full/) print "Full"};{if($2~/Half/)print "Half"};{if($2~/Uknown!/) print "unknown"}'` 
 75  
 76 Negotiation_eth0=`ethtool eth0 | grep "Advertised auto-negotiation"|awk -F': ' '{if($2~/No/) print "Non-negotiation."};{if($2~/Yes/) print "Negotiation"}'` 
 77  
 78 Negotiation_eth1=`ethtool eth1 | grep "Advertised auto-negotiation"|awk -F': ' '{if($2~/No/) print "Non-negotiation"};{if($2~/Yes/) print "Negotiation"}'` 
 79  
 80 IP_eth0=`cat /etc/sysconfig/network-scripts/ifcfg-eth0|grep IPADDR|awk -F= '{print $2}'` 
 81  
 82 IP_eth1=`cat /etc/sysconfig/network-scripts/ifcfg-eth1|grep IPADDR|awk -F= '{print $2}'` 
 83  
 84 speed_eth0=`ethtool eth0|grep Speed|awk '{print $2}'` 
 85 speed_eth1=`ethtool eth1|grep Speed|awk '{print $2}'` 
 86  
 87 echo "**********************************************" 
 88 echo "Network adapter info:" 
 89 echo  
 90 echo "  IP_eth0 : ${IP_eth0}        IP_eth0 : ${IP_eth1}" 
 91 echo "  Speed_eth0 : ${speed_eth0}          Speed_eth1 : ${speed_eth1}" 
 92 echo "  Duplex_eth0 : ${duplex_eth0}            Duplex_eth1 : ${duplex_eth1}" 
 93 echo "  Negotiation_eth0 : ${Negotiation_eth0}  Negotiation_eth1 : ${Negotiation_eth1}" 
 94 echo 
 95 } 
 96  
 97  
 98  
 99  
100 #software package 
101 software_info() { 
102 echo "**********************************************" 
103 echo "SELinux is `cat /etc/selinux/config |grep SELINUX=disabled|awk -F= '{print $2}'||echo "enabled"`" 
104 echo "`service iptables status|sed 's/Firewall/Iptables/g'`" 
105 echo 
106 echo "**********************************************" 
107 sed -n '/%packages/,/%post/p;' /root/anaconda-ks.cfg|sed '/%post/d;/^$/d' 
108 echo "**********************************************" 
109 } 
110  
111  
112  
113 #del mac-addr 
114 #sed -i '/HWADDR/d' /etc/sysconfig/network-scripts/ifcfg-eth0 
115 #sed -i '/HWADDR/d' /etc/sysconfig/network-scripts/ifcfg-eth1 
116  
117  
118 system_info 
119 cpu_info 
120 mem_info 
121 partition_info 
122 adapter_info 
123 software_info 
124 
125 echo $(date)---对硬盘io写测试-----
126 time dd if=/dev/zero of=/test.dbf bs=8k count=300000
127 du -sm /test.dbf
128 sleep 20 
129 rm -rf test.dbf
130 echo $(date)---对硬盘io读写测试-----
131 time dd if=/dev/sda1 of=test.dbf bs=8k
132 du -sm test.dbf
133 sleep 20 
134 rm -rf test.dbf
135 echo $(date)---所有用户-----
136 cat /etc/passwd | grep "/bin/bash" | awk 'BEGIN {FS=":"}{printf $1 "\t" $3 "\n"}'
137 echo $(date)---现在运行的所有进程---
138 pstree -a
139 echo $(date)---现在整在运行的端口和服务---
140 netstat -ntlp 
141 echo $(date)---检测完毕---

 

posted @ 2015-12-03 14:11  whsc  阅读(68)  评论(0)    收藏  举报