代码改变世界

system_check服务器基本信息

2019-09-28 16:57  unique-yichen  阅读(166)  评论(0)    收藏  举报
#!/bin/bash
#日期信息
DATE=$(date +%F_%T)

#系统信息
OS_VERSION=$(cat /etc/redhat-release)
kernel=$(uname -r)

#主机信息
IP=$(ifconfig eth0 | awk '/netmask/{print $2}')
hostname=$HOSTNAME

#内存使用率
MEM_TOTAL=$(free -m | awk '/Mem/{print $2"MB"}')
MEM_USAGE=$(free | grep 'Mem' | awk '{printf("%d\n",$3/$2*100)}')
CPU_FREE=$(top -n 1 | grep 'Cpu' | awk '{printf("%d\n",$8)}')
CPU_TYPE=$(awk -F ':' '/model nam/{print $2}' /proc/cpuinfo)
CPU_CORE=$(grep -c 'processor' /proc/cpuinfo)
DISK_USAGE=$(df  | awk '/\/$/{printf("%d\n",$3/$2*100)}')

#状态
if [ $MEM_USAGE -gt 10 ];then
   MEM_STATUS="异常"
else
   MEM_STATUS="正常"
fi

if [ $CPU_FREE -lt 20 ];then
    CPU_STATUS="异常"
else
    CPU_STATUS="正常"
fi

if [ $DISK_USAGE -gt 80 ];then
    DISK_STATUS="异常"
else
    DISK_STATUS="正常"
fi

ping -c 1 www.baidu.com > /dev/null 2>&1
if [ $? -eq 0 ];then
    NETWORK_STATUS="网络正常"
else
    NETWORK_STATUS="网络异常"
fi
#用户登录信息
user_name=$(whoami)

#打印内容
echo -e "\033[1;32m
主机名: $hostname
主机IP: $IP
网络状态: $NETWORK_STATUS
日期:$DATE
操作用户: $user_name

系统版本: $OS_VERSION
内核版本: $kernel

CPU型号:  $CPU_TYPE
CPU核心数量: $CPU_CORE
CPU空闲率: $CPU_FREE%
CPU状态: $CPU_STATUS

内存总量: $MEM_TOTAL
内存使用率: $MEM_USAGE%
内存状态: $MEM_STATUS

磁盘根分区使用率: $DISK_USAGE%
磁盘状态:$DISK_STATUS\033[0m"