当前位置: 首页 > ds >正文

Linux运维中常用的磁盘监控方式

在Linux运维中,磁盘监控是一项关键任务,因为它能帮助我们预防磁盘空间不足或性能问题导致的服务中断或数据丢失。让我们来看看有哪些常用的磁盘监控方法吧! 

1. 查看磁盘使用情况(`df`命令) 

`df`命令用于显示文件系统的挂载点、已用空间、可用空间等信息。它的输出简洁明了,是运维人员的得力工具!

示例:

df -h

输出示例:

Filesystem      Size  Used Avail Use% Mounted onudev            1.9G     0  1.9G   0% /devtmpfs           768M  8.6M  759M   2% /run/dev/sda1        50G   35G  15G  70% /tmpfs           3.8G   12K  3.8G   1% /dev/shm

- `-h`选项以易读的格式显示(如GB、MB)。

- `Use%`列显示磁盘使用率,接近100%时需关注!

2. 实时监控磁盘使用情况(`htop`) 

`htop`是一个交互式进程查看器,支持实时监控系统资源,包括磁盘使用情况。它界面友好,适合快速查看磁盘活动!

示例:

htop

在`htop`界面中,按下`F2`进入设置,勾选`Load average`和`Swap usage`,即可查看磁盘活动相关信息。

小贴士:

如果磁盘使用率长期居高不下,记得检查是否有异常进程!

3. 监控磁盘性能(`iostat`) 

`iostat`用于监控磁盘的性能指标,如读写次数、延迟、吞吐量等。它是分析磁盘性能瓶颈的利器!

示例:

iostat -x -d 1 5

解释:

- `-x`显示扩展统计信息。

- `-d`仅显示磁盘统计信息。

- `1`每秒更新一次。

- `5`更新5次后退出。

输出示例:​​​​​​​

Device:         rrqm/s   wrqm/s   r/s   w/s   rsec/s   wsec/s avgrq-sz avgqu-sz  await  svctm  %utilsda1              0.00     0.00   0.00  0.00     0.00     0.00     0.00     0.00   0.00   0.00   0.00

- `await`:平均等待时间(毫秒),数值越低越好。

- `%util`:磁盘利用率,接近100%时可能有性能瓶颈!

4. 监控特定目录的磁盘使用情况(`du`命令) 

`du`命令用于显示目录或文件的磁盘使用情况,帮助定位磁盘占用较大的文件或目录。它是查找“大文件”的好帮手!

示例:

du -h --max-depth=1 /home

解释:

- `-h`以人类可读的格式显示。

- `--max-depth=1`仅显示指定目录的直接子目录或文件的大小。

输出示例:​​​​​​​

4.0K    /home/user18.0K    /home/user216M     /home/user3

小贴士:

如果发现某个目录占用了大量空间,记得及时清理不必要的文件!🗑️

5. 磁盘容量预测 

通过定期监控磁盘使用情况,可以预测磁盘何时会满。以下是一个简单的脚本示例:

示例脚本:​​​​​​​

#!/bin/bash# 获取根分区的使用情况ROOT_USAGE=$(df -h / | grep '/' | awk '{print $5}' | sed 's/%//g')# 计算剩余容量和使用率TOTAL=$(df -h / | grep '/' | awk '{print $2}' | sed 's/G//g')USED=$(df -h / | grep '/' | awk '{print $3}' | sed 's/G//g')AVAIL=$(df -h / | grep '/' | awk '{print $4}' | sed 's/G//g')# 预测剩余可用天数(假设每天增长100M)DAYS_LEFT=$((AVAIL * 1000 / 100))echo "根分区使用率: $ROOT_USAGE%"echo "剩余容量: $AVAIL GB,预计可用 $DAYS_LEFT 天。"

小贴士:

定期运行这个脚本,可以提前发现磁盘容量不足的问题!

6. 监控磁盘性能(`atop`) 

`atop`是一个交互式系统监控工具,实时查看磁盘、CPU、内存等资源的使用情况。它界面直观,适合实时监控。

示例:

atop

在`atop`界面中,按下`d`键查看磁盘活动的详细信息,包括读写次数、延迟等。

小贴士:

 如果磁盘延迟过高,可能是磁盘硬件有问题,记得及时检查!🔧

7. 自动化磁盘监控(`crontab` + 脚本) ⏰

使用`crontab`定期执行磁盘监控脚本,并将结果发送到指定邮箱。这样即使不在电脑前,也能及时收到预警信息!

示例:​​​​​​​

# 编辑crontab文件crontab -e# 添加以下内容(每天凌晨1点执行磁盘监控脚本)0 1 * * * /path/to/disk_monitor.sh

示例脚本:​​​​​​​

#!/bin/bash# 获取磁盘使用率超过80%的分区OVERUSED=$(df -h | awk '{if ($5 > 80) print $0}')# 如果有分区超过80%,发送邮件if [ ! -z "$OVERUSED" ]; then    echo "$OVERUSED" | mail -s "Disk Usage Warning" admin@example.comfi

小贴士:

确保邮件服务器已配置,否则预警信息可能无法发送!

总结 

       以上是Linux运维中常用的磁盘监控方式,涵盖了磁盘使用情况、性能监控、容量预测等多个方面。根据实际需求,可以选择合适的工具或组合工具进行监控,以确保系统的稳定运行!​​​​​​​

http://www.xdnf.cn/news/3725.html

相关文章:

  • # 前后端分离象棋对战项目开发记录
  • 安卓游戏APK文件解密与编辑的完整攻略
  • NVIDIA Performance Primitives (NPP) 库全面解析
  • string--OJ1
  • linux的信号量初识
  • Linux-06-磁盘分区类命令
  • 数字智慧方案6181丨智慧医院智慧后勤发展顶层设计及应用解决方案(42页PPT)(文末有下载方式)
  • 【言语理解】中心理解题目之结构分析
  • Laravel 12 实现 API 登录令牌认证
  • 贪心算法解决会议安排问题
  • 架构进阶:深入学习企业总体架构规划(Oracle 战略专家培训课件)【附全文阅读】
  • 初始化列表详解
  • 基于SpringBoot的同城宠物照看管理系统
  • stm32 hal库 SPI使用(二)硬件SPI的HAL库函数调用
  • 架构师面试(三十八):注册中心架构模式
  • 数字智慧方案6189丨智慧应急综合解决方案(46页PPT)(文末有下载方式)
  • Linux操作系统系统编程:x86-64架构下的系统调用
  • 数字智慧方案5872丨智慧交通解决方案(54页PPT)(文末有下载方式)
  • 13分区排烟 无法远程启动 12-1-4,排烟管道出口未连接室外
  • vmware虚拟机Linux系统( CentOS7)初始化没有选择Pinyin,无法输入中文(Linux系统输入中文)
  • 计算机网络——客户端/服务端,URI与URL的区别,以及TCP/IP核心机制全解析
  • 红鸟3D互动系统棋类源码一键部署教程(含多个打包版本与功能解构)
  • C++ 赋值运算符重载详解
  • 全局分割与实例分割技术对比:U-Net与Mask R-CNN
  • Python项目源码69:一键解析+csv保存通达信日线数据3.0
  • C++map和set
  • linux指令中的竖线(“|”)是干啥的?【含实例展示】
  • HTTP 状态码详解:用途与含义
  • QMK固件中LED指示灯与RGB灯详解指南
  • MySQL初阶:数据库基础,数据库和表操作,数据库中的数据类型