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,如需转载请自行联系原作者
相关文章
|
20天前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
2月前
|
Linux 应用服务中间件 Shell
linux系统服务二!
本文详细介绍了Linux系统的启动流程,包括CentOS 7的具体启动步骤,从BIOS自检到加载内核、启动systemd程序等。同时,文章还对比了CentOS 6和CentOS 7的启动流程,分析了启动过程中的耗时情况。接着,文章讲解了Linux的运行级别及其管理命令,systemd的基本概念、优势及常用命令,并提供了自定义systemd启动文件的示例。最后,文章介绍了单用户模式和救援模式的使用方法,包括如何找回忘记的密码和修复启动故障。
48 5
linux系统服务二!
|
2月前
|
Linux 应用服务中间件 Shell
linux系统服务!!!
本文详细介绍了Linux系统(以CentOS7为例)的启动流程,包括BIOS自检、读取MBR信息、加载Grub菜单、加载内核及驱动程序、启动systemd程序加载必要文件等五个主要步骤。同时,文章还对比了CentOS6和CentOS7的启动流程图,并分析了启动流程的耗时。此外,文中还讲解了Linux的运行级别、systemd的基本概念及其优势,以及如何使用systemd管理服务。最后,文章提供了单用户模式和救援模式的实战案例,帮助读者理解如何在系统启动出现问题时进行修复。
59 3
linux系统服务!!!
|
2月前
|
Ubuntu Linux Shell
Linux 系统中的代码类型或脚本类型内容
在 Linux 系统中,代码类型多样,包括 Shell 脚本、配置文件、网络配置、命令行工具和 Cron 定时任务。这些代码类型广泛应用于系统管理、自动化操作、网络配置和定期任务,掌握它们能显著提高系统管理和开发的效率。
|
2月前
|
Linux 数据库
Linux服务如何实现服务器重启后的服务延迟自启动?
【10月更文挑战第25天】Linux服务如何实现服务器重启后的服务延迟自启动?
413 3
|
2月前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
170 3
|
2月前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
3月前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
98 1
|
3月前
|
Ubuntu Linux 网络安全
Linux中服务管理问题
【10月更文挑战第4天】
36 2
|
4月前
|
人工智能 监控 Shell
常用的 55 个 Linux Shell 脚本(包括基础案例、文件操作、实用工具、图形化、sed、gawk)
这篇文章提供了55个常用的Linux Shell脚本实例,涵盖基础案例、文件操作、实用工具、图形化界面及sed、gawk的使用。
859 2