LINUX——监控服务器状态

linux系统下监控服务器状态, 包含很多项,本文主要讲解监测Linux服务器的CPU、硬盘、内存、网络接口、主板等硬件的工作状态。

如何监控硬盘

  • 核心思想
    使用指令 df 。
  • 示例程序
#!/bin/bash
IP=` hostname -i `
HostName=` hostname `
disk_sda2=`df -Ph |grep /dev/sda2 |awk '{print $5}'|cut -f 1 -d "%" `
MailTitle="服务器硬盘报警";
if(($disk_sda2 > 90))
then
    MailContent="Hi:<br>服务器$HostName($IP)硬盘分区SDA2使用率已经超过$disk_sda2%,请及时处理。";
    php sendEmail.php $MailTitle  $MailContent
fi

如何监控内存

  • 核心思想
    使用指令 free 。然后使用ps指令输出占用内存前10的进程。
    注意free的结果,实际内存使用率是 18880/64420MB,内存分配率是29298/64420MB。
  • 示例程序
#!/bin/bash
IP=` hostname -i `
HostName=` hostname `
MAX_mem=70
MAX_swap=70
total=`free -m|grep Mem|awk '{print $2}'`
memory=`free -m|grep Mem|awk '{print $3}'`
LocatedMen=`free | awk '/Mem/ {print int($3/$2*100)}'`
Mem=`free -m | awk '/-/ {print $3}'`

Usedtotal=`awk 'BEGIN{printf int(('$Mem'/'$total')*100)}'`
UsedSwap=`free | awk '/Swap/ {print $3}' `
if [ $UsedSwap -gt  0 ];
then
    SWAP=`free | awk '/Swap/ {print int($3/$2*100)}'`
else
    SWAP=0
fi

MailTitle="服务器内存报警";
if [ $Usedtotal -gt $MAX_mem -o $SWAP -gt $MAX_swap ]; then
    `ps auxw|head -1;ps auxw|sort -rn -k4|head -10 > memory.txt`
    MailContent="Hi:<br>&nbsp服务器$HostName($IP)内存使用率情况如下,请及时关注下。<br>&nbsp&nbspmemory使用率已经超过$Usedtotal%,swap使用率已经超过$SWAP%。<br>&nbsp&nbspmem(buffer+cache)系统分配$memory&nbspMB($LocatedMen%),实际使用$Mem&nbspMB($Usedtotal%)<br>&nbsp具体内存占用top10进程见附件memory.txt。";
    php sendEmail.php $MailTitle  $MailContent
fi

如何监控CPU

待续。

如何监控网络接口

 待续。

如何监控主板

 待续。
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值