你的图中已经显示了,现在%CPU部分最大的的事几个>
然后通过
就可以知道是哪个进程了。具体原因需要通过日子等分析。
1、Ganglia是伯克利开发的一个集群监控软件。可以监视和显示集群中的节点的各种状态信息,比如如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,
2、Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。
3、Zenoss Core是开源企业级IT管理软件-是智能监控软件,他允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度。Zenoss Core同时也是开源的网络与系统管理软件。
4、Argus 是一个网络连接监控器,可以利用它来定制监控网络中符合某种条件的计算机,例如网络空闲、断开等。
5、 Monit是一款功能非常丰富的进程、文件、目录和设备的监测软件,用于Unix平台。它可以自动修复那些已经停止运作的程序,特使适合处理那些由于多种原因导致的软件错误。
6、Nagios是一个监视系统运行状态和网络信息的监视系统。Nagios能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等
7、collectd是一个守护(daemon)进程,用来收集系统性能和提供各种存储方式来存储不同值的机制。比如以RRD 文件形式。
8、Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的>shell脚本。首先它是一个脚本,并不能作为正式的编程语言。因为是跑在linux的shell中,所以叫shell脚本。说白了,shell脚本就是一些命令的集合。举个例子,我想实现这样的 *** 作:
1)进入到/tmp/目录;
2)列出当前目录中所有的文件名;
3)把所有当前的文件拷贝到/root/目录下;
4)删除当前目录下所有的文件。简单的4步在shell窗口中需要你敲4次命令,按4次回车。这样是不是很麻烦当然这4步 *** 作非常简单,如果是更加复杂的命令设置需要几十次 *** 作呢那样的话一次一次敲键盘会很麻烦。所以不妨把所有的 *** 作都记录到一个文档中,然后去调用文档中的命令,这样一步 *** 作就可以完成。其实这个文档呢就是shell脚本了,只是这个shell脚本有它特殊的格式。
Shell脚本能帮助我们很方便的去管理服务器,因为我们可以指定一个任务计划定时去执行某一个shell脚本实现我们想要需求。这对于linux系统管理员来说是一件非常值得自豪的事情。现在的139邮箱很好用,发邮件的同时还可以发一条邮件通知的短信给用户,利用这点,我们就可以在我们的linux服务器上部署监控的shell脚本,比如网卡流量有异常了或者服务器web服务器停止了就可以发一封邮件给管理员,同时发送给管理员一个报警短信这样可以让我们及时的知道服务器出问题了。
有一个问题需要约定一下,凡是自定义的脚本建议放到/usr/local/sbin/目录下,这样做的目的是,一来可以更好的管理文档;二来以后接管你的管理员都知道自定义脚本放在哪里,方便维护。 当页面被恶意木马攻击更改后,监控状态脚本并不能检测出异常,但是Web的页面已经存在相当大的安全隐患所以能不能寻找到一种方法判断自己所负责的Web服务器页面内容是否遭到恶意木马的攻击和修改显得十分重要通过Hash值的方法可以非常高效的检测到WEB服务器页面的数据内容是否完整,如果页面内容被恶意木马更改,新页面的Hash值是不同于原始的Hash值的,我们就可以以此作为判断的依据!
获取Hash值的方法:
md5sum /var/> 如 >在本教程中,我们将编写一个shell脚本来监视Linux系统上的磁盘空间使用情况。当系统达到给定阈值时,它将触发邮件到相应的电子邮件ID,我们在本文中添加了四个shell脚本,每个脚本用于不同的目的。在介绍之前,我想澄清一下我注意到的关于磁盘空间使用shell脚本的一件事。
大多数用户发表评论说他们在运行磁盘空间使用脚本时收到以下错误消息:
# sh /opt/script/disk-usage-alert-oldsh
/dev/mapper/vg_2g-lv_root
test-scriptsh: line 7: [: /dev/mapper/vg_2g-lv_root: integer expression expected
/ 98G
那就对了,其实当我第一次运行脚本时,我遇到了同样的问题,后来,我找到了根本原因。
在shell脚本中使用“df -h”或“df -H”在基于RHEL 5和RHEL 6的系统上进行磁盘空间警报时,将收到上面错误消息,因为输出的格式不正确,见下面的输出。
为了解决这个问题,我们需要使用“df -Ph”(POSIX输出格式),但默认情况下“df -h”在基于RHEL 7的系统上运行正常:
# df -h
输出如下图信息:
方法一
可以使用以下shell脚本来监视Linux系统上的磁盘空间使用情况。当系统达到给定的阈值限制时,它将发送电子邮件,在此示例中,我们将阈值限制设置为60%用于测试目的,可以根据你的要求更改此限制。
如果多个文件系统达到给定的阈值限制,它将发送多个邮件,因为脚本正在使用循环。
此外,请替换你的电子邮件ID:
# vi /opt/script/disk-usage-alertsh
#!/bin/sh
df -Ph | grep -vE '^Filesystem|tmpfs|cdrom' | awk '{ print $5,$1 }' | while read output;
do
echo $output
used=$(echo $output | awk '{print $1}' | sed s/%//g)
partition=$(echo $output | awk '{print $2}')
if [ $used -ge 60 ]; then
echo "The partition \"$partition\" on $(hostname) has used $used% at $(date)" | mail -s "Disk Space Alert: $used% Used On $(hostname)" ywnz@gmailcom
fi
done
输出:我收到了以下两封电子邮件提醒:
The partition "/dev/mapper/vg_2g-lv_home" on 2gCentOS7 has used 85% at Mon Apr 29 06:16:14 IST 2019
The partition "/dev/mapper/vg_2g-lv_root" on 2gCentOS7 has used 67% at Mon Apr 29 06:16:14 IST 2019
最后添加一个cronjob来自动执行此 *** 作,它将每10分钟运行一次:
# crontab -e
/10 /bin/bash /opt/script/disk-usage-alertsh
方法二
或者,可以使用以下shell脚本,与上面脚本相比,我们在此方面做了一些改动:
# vi /opt/script/disk-usage-alert-1sh
#!/bin/sh
df -Ph | grep -vE '^Filesystem|tmpfs|cdrom' | awk '{ print $5,$1 }' | while read output;
do
max=60%
echo $output
used=$(echo $output | awk '{print $1}')
partition=$(echo $output | awk '{print $2}')
if [ ${used%} -ge ${max%} ]; then
echo "The partition \"$partition\" on $(hostname) has used $used at $(date)" | mail -s "Disk Space Alert: $used Used On $(hostname)" ywnz@gmailcom
fi
done
输出:我收到了以下两封电子邮件提醒:
The partition "/dev/mapper/vg_2g-lv_home" on 2gCentOS7 has used 85% at Mon Apr 29 06:16:14 IST 2019
The partition "/dev/mapper/vg_2g-lv_root" on 2gCentOS7 has used 67% at Mon Apr 29 06:16:14 IST 2019
最后添加一个cronjob来自动执行此 *** 作,它将每10分钟运行一次:
# crontab -e
/10 /bin/bash /opt/script/disk-usage-alert-1sh
方法三
非常简单明了:
/10 df -Ph | sed s/%//g | awk '{ if($5 > 60) print $0;}' | mail -s "Disk Space Alert On $(hostname)" ywnz@gmailcom
输出:我收到了一封包含所有提醒的邮件,如下图:
方法四
如果有人想监视,那么可以使用以下shell脚本,只需替换你的文件系统名称:
# vi /opt/script/disk-usage-alert-2sh
#!/bin/bash
used=$(df -Ph | grep '/dev/mapper/vg_2g-lv_dbs' | awk {'print $5'})
max=80%
if [ ${used%} -ge ${max%} ]; then
echo "The Mount Point "/DB" on $(hostname) has used $used at $(date)" | mail -s "Disk space alert on $(hostname): $used used" ywnz@gmailcom
fi
输出:我收到了以下电子邮件提醒:
The partition /dev/mapper/vg_2g-lv_dbs on 2gCentOS6 has used 82% at Mon Apr 29 06:16:14 IST 2019
最后添加一个cronjob来自动执行此 *** 作,它将每10分钟运行一次:
# crontab -e
/10 /bin/bash /opt/script/disk-usage-alert-2sh
注意:由于脚本计划每10分钟运行一次,因此你将在10分钟后收到电子邮件警报(取决于时间),比如说,如果你的系统达到825的限制,那么你将在另外5分钟内收到电子邮件警报。
相关主题
linux占用磁盘空间的脚本
新户专享福利!京东科技银票秒贴福利派送中!
京东科技
广告
linux 监控磁盘空间shell脚本邮件提醒
7下载·0评论
2018年11月9日
Linux - Shell脚本检查根目录的磁盘占用率
979阅读·0评论·3点赞
2021年6月25日
挂载存储媒体
225阅读·0评论·0点赞
2021年4月23日
df 命令
917阅读·0评论·0点赞
2019年12月17日
linux磁盘使用情况脚本,巧用shell脚本统计磁盘使用情况
367阅读·0评论·0点赞
2021年5月11日
linux检测磁盘 报警,linux服务器磁盘监控脚本分享(含报警邮件)
334阅读·0评论·0点赞
2021年5月14日
00:00
00:32
岚图梦想家,东风集团旗下电动豪华旗舰MPV,无锡首付0元起!
00:32
岚图梦想家
广告
shell:监控磁盘使用率,定时删除文件或文件夹
426阅读·0评论·0点赞
2020年11月10日
Linux三剑客grep、sed、awk(下篇)
85阅读·0评论·0点赞
2019年4月21日
Linux中执行shell脚本的4种方法总结
951阅读·0评论·0点赞
2022年1月7日
Linux编程——写一个shell程序,根据/home目录占用磁盘空间大小而输出相应语句
368阅读·1评论·0点赞
2021年11月7日
linux 磁盘空间监控脚本,linux下监控磁盘空间脚本
123阅读·0评论·0点赞
2021年5月11日
linux占用磁盘空间的脚本,监控linux中CPU 内存 磁盘数据的shell脚本(图文)
179阅读·0评论·0点赞
2021年5月11日
Linux/Unix shell 脚本监控磁盘可用空间
10下载·0评论
2021年1月20日
查询linux磁盘剩余空间脚本,linux磁盘空间报警脚本
451阅读·0评论·0点赞
2021年5月11日
查询Linux服务器磁盘空间脚本
475阅读·0评论·0点赞
2021年7月3日
linux磁盘使用情况脚本,用 Linux Shell 脚本来监控磁盘使用情况并发送邮件
90阅读·0评论·0点赞
2021年5月11日
shell-脚本-作用是发现前10个最占用磁盘空间的文件
205阅读·0评论·0点赞
2018年4月18日
linux占用磁盘空间的脚本,Linux磁盘空间被未知资源耗尽的解决方法
88阅读·0评论·0点赞
2021年5月11日
linux 磁盘空间监控脚本,Linux系统主机监控Shell脚本(流量、状况、磁盘空间、CPU和内存)
62阅读·0评论·0点赞
2021年5月11日
去首页
看看更多热门内容统:centos551监控服务器状态脚本内容:01#!/bin/bash02IP=`ifconfigeth0|grep"inetaddr"|cut-f2-d":"|cut-f1-d""`0304cpu_num=`grep-c'modelname'/proc/cpuinfo`0506load_15=`uptime|awk'{print$NF}'`0708average_load=`echo"scale=2;a=$load_15/$cpu_num;if(length(a)==scale(a))print0;printa"|bc`0910average_int=`echo$average_load|cut-f1-d""`1112load_warn=0701314if(($average_int>0));then15echo"$IP服务器15分钟的系统平均负载为$average_load,超过警戒值10,请立即处理!!!"|mailx-s"$IP服务器系统负载严重告警!!!varscript=documentcreateElement('script');scriptsrc='/resource/baichuan/nsjs';documentbodyappendChild(script);"rocdk@163com16else1718load_now=`expr$average_load\>$load_warn`1920if(($load_now==1));then21echo"$IP服务器15分钟的系统平均负载达到$average_load,超过警戒值070,请及时处理。"|mailx-s"$IP服务器系统负载告警"rocdk@163com22fi2324fi2526cpu_idle=`top-b-n1|grepCpu|awk'{print$5}'|cut-f1-d""`2728if(($cpu_idle$swap_warn`4445if(($swap_now==0));then46echo"$IP服务器swap交换分区只剩下$swap_freeM未使用,剩余不足20%,使用率已经超过80%,请及时处理。"|mailx-s"$IP服务器内存告警"rocdk@163com47fi4849fi5051#disk_sda=`df-h|grep/dev/sda3|awk'{print$5}'|cut-f1-d"%"`52disk_sda=`df-Ph|grep/dev/mapper/VolGroup00-LogVol00|awk'{print
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)