码迷,mamicode.com
首页 > 系统相关 > 详细

Linux系统资源及账户安全监测脚本

时间:2015-04-23 00:11:55      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:linux   local   资源   

#!/bin/bash
#Created by liter on 2014/7/11

PATH=/opt/jdk1.6.0_45/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
export PATH

#CPU INFO

id_cpu=`top -b -d 2 -n 10 | grep Cpu | grep -v grep | cut -d ‘,‘ -f 4 | tr -d -c ‘0-9.\n‘ | sort -n | head -n 1`
use_cpu=`echo "100-$id_cpu" | bc` 
echo -e "\e[32m******************************************************* \e[0m"
echo -e "\e[1;42m CPU INFO \e[0m"
echo -e "if($id_cpu<=20) print \"CPU has been used in \e[31m$use_cpu%, more than 80%\e[0m\n\" else print \"CPU has been used in \e[31m$use_cpu%, less than 80%\e[0m\n\"" | bc
echo -e "\e[32m******************************************************* \e[0m"


#MEM INFO

total_mem=`free -m | grep Mem | tr -d -c ‘0-9 \n‘ | tr -s ‘ ‘ | cut -d ‘ ‘ -f 2`
used_mem=`free -m | grep Mem | tr -d -c ‘0-9 \n‘ | tr -s ‘ ‘ | cut -d ‘ ‘ -f 3`
free_mem=`free -m | grep Mem | tr -d -c ‘0-9 \n‘ | tr -s ‘ ‘ | cut -d ‘ ‘ -f 4`
buffers_mem=`free -m | grep Mem | tr -d -c ‘0-9 \n‘ | tr -s ‘ ‘ | cut -d ‘ ‘ -f 6`
cached_mem=`free -m | grep Mem | tr -d -c ‘0-9 \n‘ | tr -s ‘ ‘ | cut -d ‘ ‘ -f 7`
numerator=$[ $used_mem - $buffers_mem - $cached_mem ]
float=`echo "scale=2;$numerator/$total_mem" | bc`
int_float=`echo "$float * 100" | bc`
echo -e "\e[1;42m MEM INFO \e[0m"
echo "total_mem is $total_mem M"
echo "used_mem is $used_mem M"
echo "true_used_mem is $numerator M"
echo "buffers_mem is $buffers_mem M"
echo "cached_mem is $cached_mem M"
echo -e "if($int_float>=80) print \"MEM has been used in \e[31m$int_float%, more than 80%\e[0m\n\" else print \"MEM has been used in \e[31m$int_float%, less than 80%\e[0m\n\"" | bc
echo -e "\e[32m******************************************************* \e[0m"


#SWAP INFO

echo -e "\e[1;42m SWAP INFO \e[0m"
total_swap=`free -m | grep Swap | tr -d -c ‘0-9 \n‘ | tr -s ‘ ‘ | cut -d ‘ ‘ -f 2`
if [ $total_swap -eq 0 ];then
	echo -e "\e[31mswap is unavailable\e[0m"
else
	used_swap=`free -m | grep Swap | tr -d -c ‘0-9 \n‘ | tr -s ‘ ‘ | cut -d ‘ ‘ -f 3`
	free_swap=`free -m | grep Swap | tr -d -c ‘0-9 \n‘ | tr -s ‘ ‘ | cut -d ‘ ‘ -f 4`
	float_swap=`echo "scale=2;$used_swap/$total_swap" | bc`
	echo "total_swap is $total_swap M"
	echo "used_swap is $used_swap M"
	percentage_swap=`echo "float_swap * 100" | bc`
	echo -e "SWAP has been used in \e[31m$percentage_swap%\e[0m"
fi
echo -e "\e[32m******************************************************* \e[0m"


#DISK INFO

echo -e "\e[1;42m DISK INFO \e[0m"
df -Th
echo -e "\e[32m******************************************************* \e[0m"


#PASSWD TABLE

echo -e "\e[1;42m PASSWORD TABLE INFO \e[0m"
passwd="/root/.passwd"
if [ ! -f "$passwd" ];then
	cp /etc/passwd /root/.passwd
	chattr +i /root/.passwd
fi
diff /root/.passwd /etc/passwd
if [ $? -eq 0 ];then
	echo -e "\e[31m/etc/passwd have no change\e[0m"
else
	echo -e "\e[31m/etc/passwd maybe changed\e[0m"
fi
echo -e "\e[32m******************************************************* \e[0m"

运行示例(cpu,内存,swap,磁盘,密码表信息):

技术分享

本文出自 “稻花香里说丰年” 博客,请务必保留此出处http://liter0015.blog.51cto.com/8746750/1637362

Linux系统资源及账户安全监测脚本

标签:linux   local   资源   

原文地址:http://liter0015.blog.51cto.com/8746750/1637362

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!