懒人脚本:sysinfo系统运行状态自动收集

脚本用途:
每小时
1 记录系统负载
2 记录网络流量
3 记录内存状况
4 记录存储状态

环境设定:
设定执行脚本在/usr/bin目录内
设定执行脚本文件名为:sysinfo.sh
设定每天生成日志文件名 为sysinfo_$Time1.log (Time1为当天脚本日期)
设定生成日志文件的路径为/Datas/logs/syslog
设 定平均每1小时执行一次系统状态收集

编写运行脚本如下:
新建 sysinfo.sh
#vi /usr/bin/sysinfo.sh

输入以下内容:
#! /bin/sh
#
Time1=`date +%Y%m%d`
## 定义变量Time1 显示状态 为YYYYMMDD
#
Time2=`date +%c`
## 定义变量Time2 显示状态为 x年x月x日 星期x x时x分x秒
#
cd /Datas/logs/syslog
## 日志文件的路径
#
echo "=================================================================" >>sysinfo_$Time1.log
## 养眼分割符,为方便查看分段记录
#
echo "-------------------">>sysinfo_$Time1.log
echo "[ sysinfo By Camor ]">>sysinfo_$Time1.log
echo "-------------------">>sysinfo_$Time1.log
## 良好习惯,脚本说明信息
#
date +%c>>sysinfo_$Time1.log
echo "--------------------" >>sysinfo_$Time1.log
echo "Cpu状态">>sysinfo_$Time1.log
echo "--------------------" >>sysinfo_$Time1.log
sar 1 5 -u >>sysinfo_$Time1.log
## 当前时间收集5次CPU占用状况,系统取得平均值
#
echo "" >>sysinfo_$Time1.log
echo "--------------------" >>sysinfo_$Time1.log
echo "网卡状态">>sysinfo_$Time1.log
echo "--------------------" >>sysinfo_$Time1.log
sar 1 3 -n DEV>>sysinfo_$Time1.log
## 当前时间收集3次网络流量状况,系统取得平均值
#
echo "" >>sysinfo_$Time1.log
echo "--------------------" >>sysinfo_$Time1.log
echo "内存状态(M单位)">>sysinfo_$Time1.log
echo "--------------------" >>sysinfo_$Time1.log
free -m >>sysinfo_$Time1.log
## 以M为单位显示当前内存状态
#
echo "" >>sysinfo_$Time1.log
echo "--------------------" >>sysinfo_$Time1.log
echo "磁盘占用状况(M单位)">>sysinfo_$Time1.log
echo "--------------------" >>sysinfo_$Time1.log
df -m>>sysinfo_$Time1.log
## 以M为单位显示当前磁盘占用状态
#
echo "" >>sysinfo_$Time1.log
#
################################
脚本完成,存盘退出。

使编写的脚本属性为可执行。

加入定时任务调度表:
# crontab -e
加入这样一行:
0 */1 * * * /usr/bin/sysinfo.sh

Ok.... 现在不用mrtg,偷懒也可以保存系统状态了。
当然,就方便直观而言,还是mrtg、rrd之类的或者更专业的工具最 好。脚本只是应急方法,领导临时需要数据时专用。。
内容引用自:http://blog.chinaunix.net/u/18377/showart_370468.html

注意:sar需要另外安装
下载地址是:http://pagesperso-orange.fr/sebastien.godard/download.html

你可能感兴趣的:(职场,休闲,监控脚本)