网站首页 > 技术教程 正文
1. 核心监控指标解析
为什么需要监控这些资源?
- CPU利用率:反映系统处理任务的繁忙程度,持续高负载可能导致服务延迟。
- 内存占用:物理内存不足会触发Swap交换,显著降低性能。
- Swap使用率:频繁的Swap读写是系统“喘不过气”的红色警报。
关键指标的计算逻辑
- CPU利用率:(1 - idle_time / total_time) * 100%
- 内存利用率:(used / total) * 100%
- Swap利用率:类似内存计算,但需注意free命令中的used字段包含缓存(buff/cache)。
2. 命令行工具:快速诊断的利器
2.1 top:实时动态监控
启动命令:
top
输出关键字段解读:
- %Cpu(s)行:
- us(用户态)、sy(内核态)、id(空闲)、wa(I/O等待)
- 内存与Swap:显示在顶部汇总行(按E切换单位)。
操作技巧:
- 按P按CPU排序、M按内存排序。
- 按1展开多核CPU详情。
2.2 htop:交互式增强工具
安装与启动:
sudo apt install htop # Debian/Ubuntu
htop
核心优势:
- 彩色界面,直观显示CPU/内存使用条。
- 支持鼠标点击排序、直接杀死进程。
2.3 vmstat:系统整体状态快照
命令示例(每2秒刷新一次):
vmstat 2
输出解析:
- procs:r(运行队列)、b(阻塞进程)。
- memory:swpd(已用Swap)、free(空闲内存)。
- swap:si(Swap换入)、so(Swap换出)。
2.4 free:精准计算内存与Swap
常用参数:
free -h # 人类可读格式
free -s 5 # 每5秒刷新
计算内存使用率:
total=$(free | awk '/Mem:/ {print $2}')
used=$(free | awk '/Mem:/ {print $3}')
echo "内存利用率:$(echo "scale=2; $used/$total*100" | bc)%"
2.5 mpstat:多核CPU细分统计
安装与使用:
sudo apt install sysstat # 安装
mpstat -P ALL 2 # 每2秒报告所有CPU核心
输出示例:
3. 系统文件与脚本:底层数据的直接访问
3.1 从/proc文件系统获取原始数据
- CPU信息:
cat /proc/cpuinfo # 逻辑核数、型号等
cat /proc/stat # 全局CPU时间统计
- 内存与Swap:
cat /proc/meminfo | grep -E 'MemTotal|MemFree|SwapTotal|SwapFree'
3.2 自定义Shell脚本实现自动化计算
脚本示例:综合监控
#!/bin/bash
# 获取CPU利用率(最近1秒)
cpu_usage=$(top -bn1 | grep "%Cpu(s)" | awk '{print 100 - $8}')
# 获取内存利用率
mem_info=$(free | grep Mem)
mem_total=$(echo $mem_info | awk '{print $2}')
mem_used=$(echo $mem_info | awk '{print $3}')
mem_percent=$(echo "scale=2; $mem_used/$mem_total*100" | bc)
# 输出结果
echo "CPU使用率:${cpu_usage}%"
echo "内存使用率:${mem_percent}%"
4. 高级工具与自动化监控
4.1 sar:历史性能数据分析
配置与使用:
sudo apt install sysstat
sudo systemctl enable sysstat # 启用历史记录
sar -u 2 3 # CPU报告(每2秒一次,共3次)
sar -r # 内存统计
sar -S # Swap使用情况
4.2 glances:一体化仪表盘
安装与启动:
pip install glances
glances
功能亮点:
- 实时显示CPU、内存、Swap、磁盘、网络等。
- 支持Web端访问(glances -w)。
猜你喜欢
- 2025-05-05 Linux进程文件内存管理深入解析(linux进程占用内存)
- 2025-05-05 Linux内存管理有页表吗?深入Linux内存原理中页、页表和页框(块)
- 2025-05-05 Android 16允许Linux终端使用手机全部存储空间
- 2025-05-05 Linux系统如何显示系统内存使用情况,free命令来了!
- 2025-05-05 Linux服务器如何查看CPU使用率、内存占用情况
- 2025-05-05 linux查看内存和释放内存命令(linux查看内存状态)
- 2025-05-05 如何在 Linux 中检查内存使用情况?这5个命令很管用!
- 2025-05-05 如何显示 Linux 系统上的可用内存?这几个命令很好用!
你 发表评论:
欢迎- 最近发表
-
- linux日志文件的管理、备份及日志服务器的搭建
- Linux下挂载windows的共享目录操作方法
- Linux系统中的备份文件命令(linux系统中的备份文件命令有哪些)
- 麒麟KYLINOS|通过不同方法设置用户访问文件及目录权限
- 「Linux笔记」系统目录结构(linux目录的结构及含义)
- linux中修改归属权chown命令和chgrp命令
- 工作日报 2021.10.27 Android-SEAndroid权限问题指南
- Windows和Linux环境下,修改Ollama的模型默认保存路径
- 如何强制用户在 Linux 上下次登录时更改密码?
- 如何删除Linux文件夹中除某些扩展名之外的所有文件?
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)