#!/bin/bash
os_check(){
#系统信息
#1.操作类型
os_type=$(uname)
echo "操作系统的类型是${os_type}"
#2.操作系统的版本号
os_ver=$(cat /etc/redhat-release)
echo "操作系统的版本号是${os_ver}"
#3.操作系统的内核版本
os_ker=$(uname -r)
echo "操作系统的内核版本是${os_ker}"
#4.当前运行时间
os_time=$(date +%F-%T)
echo "当前运行的时间是${os_time}"
#5.服务器最后重启的时间
os_reboot_time=$(uptime |awk '{print $3}' |awk -F ',' '{print $1}')
echo "最后重启的时间为${os_reboot_time}"
os_hostname=$(hostname)
echo "主机名为${os_hostname}"
}
net_check(){
#网络信息
#1.IP地址
net_ip=$(ifconfig ens33 |sed -n '2p' |awk '{print $2}')
echo "本机的IP地址是${net_ip}"
#2.验证服务器是否有网
ping -c 1 www.baidu.com > /dev/null
if [ $? -eq 0 ];then
echo "IP 地址 YES"
else
echo "IP 地址 NO"
fi
#3.获取指定网卡的流量输入、输出
net_RX=$(ifconfig ens33 |awk '/RX/' |sed -n '1p' |awk '{print $6,$7}')
echo "输入的流量是${net_RX}"
net_TX=$(ifconfig ens33 |awk '/TX/' |sed -n '1p' |awk '{print $6,$7}')
echo "输出的流量是${net_TX}"
}
cpu_check(){
#硬件信息
#1.cpu的物理个数
cpu_count=$(cat /proc/cpuinfo | grep "physical id" |sort |uniq |wc -l)
echo "cpu的物理个数是${cpu_count}"
#2.cpu的核心数
cpu_cory=$(cat /proc/cpuinfo | grep "core id" |sort |uniq |wc -l)
echo "cpu的核心数是${cpu_cory}"
#3.cpu的型号
cpu_model=$(cat /proc/cpuinfo | grep "model name" |sort |uniq |awk -F ':' '{print $2}')
echo "cpu的型号是${cpu_model}"
}
mem_check(){
#内存信息
#1.内存总大小
mem_totl=$(free -h | awk '/Mem/{print $2}')
echo "内存总大小为${mem_totl}"
#2.内存已用大小
mem_used=$(free -h | awk '/Mem/{print $3}')
echo "内存已用${mem_used}"
#3.内存剩余大小
mem_free=$(free -h | awk '/Mem/{print $4}')
echo "内存剩余${mem_free}"
#4.内存剩余百分比
percent_free=$(free |awk '/Mem/{printf "%.2f",$4/$2*100}')
echo "内存剩余${percent_free}%"
#5.内存使用百分比
percent_free=$(free |awk '/Mem/{printf "%.2f",$3/$2*100}')
echo "内存使用${percent_free}%"
}
disk_check(){
#磁盘信息
#1.磁盘总大小
disk_sum=$(lsblk |awk '/disk/{print $4}')
echo "磁盘总大小为 ${disk_sum}"
#2.磁盘剩余大小
disk_free=($(df -T | grep -v "tmpfs"|sed 1d |awk '{print $5}'))
sum=0
for i in ${disk_free[@]}
do
let sum=sum+$i
done
a=$[sum/1024/1024]
echo "磁盘剩余$a"G
}
aq_check(){
#1.通过md5sum 生成校验码,判断文件内容是否有被改动
[ -f /opt/md5sum ] || md5sum /var/www/html/* > /opt/md5sum
md5sum -c /opt/md5sum > /dev/null
if [ $? -eq 0 ];then
echo "web目录下的文件内容没有发生改变"
rm -rf /opt/md5sum
else
echo "文件内容被篡改,小心被黑"
fi
#2.判断web目录下得文件数是否有改动
[ -f /opt/a ] || find /var/www/html/ -type f > /opt/a
[ -f /opt/b ] || find /var/www/html/ -type f > /opt/b
diff /opt/a /opt/b > /dev/null
if [ $? -eq 0 ];then
echo "web目录下的文件数量没有发生改变"
else
echo "web目录下的文件数量发生改变,请小心"
fi
}
#定义一个初始值
summ=0
#死循环
while :
do
#累加
let summ++
echo -e "\033[31m 系统信息 \033[0m"
os_check
echo -e "\033[31m 网络信息 \033[0m"
net_check
echo -e "\033[31m 硬件信息 \033[0m"
cpu_check
echo -e "\033[31m 内存信息 \033[0m"
mem_check
echo -e "\033[31m 磁盘信息 \033[0m"
disk_check
echo -e "\033[31m 安全信息 \033[0m"
aq_check
#沉睡三秒
sleep 3
#判断循环三次自动退出
if [ $summ -eq 3 ];then
exit
fi
done
shell 日常系统巡检脚本
猜你喜欢
转载自blog.csdn.net/Q274948451/article/details/108635466
今日推荐
周排行