linux 基本服务检测脚本

简介:

司要求不符合,这里就都使用了自己手写的脚本进行取值,有不合理的地方希望大家能够指出来。


1. cpu_load.sh 

#!/bin/bash

#这里是做的一个cpu load负载的一个脚本,取的值为一分钟。

 uptime | awk '{print $10}' | awk -F "," '{print $1}'

2.  cpu_used.sh 

#!/bin/bash

#这里取值取的是cpu的使用百分比, 单位%

File=cpu_`date +%Y%m%d`

sar -u >/tmp/$File

free=`tac /tmp/$File|sed -n 2p|awk '{print $NF}'`

echo $free|awk '{printf "%.2f\n", 100-$1}'


 3. Mem_free.sh 

#!/bin/bash

# 这个一个计算内存可用容量脚本 可用容量等于free+buffers+cached,单位为M

Free=`free -m| grep Mem| awk '{print $4}'`

Buffers=`free -m| grep Mem| awk '{print $6}'`

Cached=`free  -m| grep Mem| awk '{print $7}'`

Avial=$(($Free+$Bufers+$Cached))

echo $Avial

4. Mem_total.sh 

#!/bin/bash

#单位名称为M

free -m | grep Mem| awk  '{print $2}'


5. Mem_usage.sh 

#!/bin/bash

#这个一个计算内存可用使用率脚本 可用容量等于free/total

Free=`free -m| grep Mem| awk '{print $4}'`

Buff=`free -m| grep Mem| awk '{print $6}'`

Cach=`free -m| grep Mem| awk '{print $7}'`

Total=`free -m | grep Mem| awk '{print $2}'`

Tused=$(($Total-$Free-$Buff-$Cach))

echo "$Tused $Total"|awk '{printf ("%.2f\n",$1*100/$2)}' 


6.IO_read.sh 

#!/bin/bash

#原始单位:块  换算单位:M

file=ior_`date +%Y%m%d`

sar -b > /tmp/$file

Read=`tac /tmp/$file|sed -n 2p|awk '{print $(NF-1)}'`

echo $Read|awk '{printf  ("%.2f\n", $1*4/1024)}'

 

7.IO_write.sh 

#!/bin/bash

#原始单位:K  换算单位:M

file=iow_`date +%Y%m%d`

sar -b > /tmp/$file

Write=`tac /tmp/$file|sed -n 2p|awk '{print $NF}'`

echo $Write|awk '{printf ("%.2f\n", $1*4/1024)}'



8. disk_total.sh 

#!/bin/bash

#这里取值取的是disk total值,单位名称是GB

df -hT| grep '/$'| awk '{print $2}'| awk '{print$1}'|sed 's/G//g'  


9. disk_usage.sh 

#!/bin/bash

#这里取值取的是disk 使用率值,单位名称是%

df -hT| grep '/$'| awk '{print $5}'| awk '{print$1}'|sed 's/%//g'


10. disk_used.sh 

#!/bin/bash

#这个是取值 取的是disk used的值,单位是GB

df -hT| grep '/$'| awk '{print $3}'| awk '{print$1}'|sed 's/G//g'


11.  Network_in.sh 

#!/bin/bash

#这是一个检测网卡入口流量的脚本,单位名称为Mb

File=net_`date +%Y%m%d`

for i in `ls /etc/sysconfig/network-scripts/|grep ifcfg|grep -v lo|awk -F "-" '{print $2}'`

do

mii-tool $i >/dev/null 2>&1

if [ $? -eq 0 ];

then

   sar -n DEV 1 2|grep $i >/tmp/$File

   Net_in=`tac /tmp/$File|sed -n 2p|awk '{print $6}'`

   echo $Net_in|awk '{printf  ("%.2f\n", $1*8/1000)}'

 else

   continue

fi

done


12. Network_out.sh 

#!/bin/bash

# 这是一个检测网卡出口流量的脚本,单位名称为Mb

File=net_`date +%Y%m%d`

for i in `ls /etc/sysconfig/network-scripts/|grep ifcfg|grep -v lo|awk -F "-" '{print $2}'`

do

mii-tool $i >/dev/null 2>&1

if [ $? -eq 0 ];

then

   sar -n DEV 1 2|grep $i >/tmp/$File

   Net_out=`tac /tmp/$File|sed -n 2p|awk '{print $7}'`

   echo $Net_out|awk '{printf  ("%.2f\n", $1*8/1000)}'

 else

   continue

fi

done




本文转自 Innocence_caosm 51CTO博客,原文链接:http://blog.51cto.com/innocence/1845054,如需转载请自行联系原作者
相关文章
|
24天前
|
Linux Shell
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
78 1
|
27天前
|
Linux Shell Python
Linux执行Python脚本
Linux执行Python脚本
27 1
|
1月前
|
Linux Shell Windows
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
|
1月前
|
Shell Linux C语言
【Shell 命令集合 磁盘维护 】Linux 用于检测和标记坏扇区(bad blocks)mbadblocks命令使用教程
【Shell 命令集合 磁盘维护 】Linux 用于检测和标记坏扇区(bad blocks)mbadblocks命令使用教程
27 0
|
3天前
|
Linux Shell Android开发
自动化脚本之GPIO/LED相关适用于Android/Linux
自动化脚本之GPIO/LED相关适用于Android/Linux
13 0
|
8天前
|
存储 关系型数据库 MySQL
Linux服务详解
Linux服务详解
23 0
|
9天前
|
网络协议 Ubuntu Linux
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
|
17天前
|
监控 Java Linux
linux下监控java进程 实现自动重启服务
linux下监控java进程 实现自动重启服务
|
20天前
|
关系型数据库 MySQL Linux
linux特定服务日志
Linux系统的服务日志在`/var/log`目录下,如系统日志(`/var/log/syslog`或`/var/log/messages`)、认证日志(`/var/log/auth.log`)、SSH日志(`/var/log/auth.log`或`/var/log/secure`)。Web服务器(Apache和Nginx)的访问和错误日志、MySQL错误日志、Postfix及Dovecot邮件服务器日志也在此处。日志位置可能因发行版和服务配置而异,不确定时可查服务配置或用`grep`搜索。使用`logrotate`可管理日志文件大小。
20 6
|
23天前
|
Ubuntu Unix Linux
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
【Linux/Ubuntu】Linux/Ubuntu运行python脚本