87 lines
2.6 KiB
YAML
87 lines
2.6 KiB
YAML
tool_id: BASH-CHECK-DISK-003
|
||
tool_name: "磁盘健康检查器"
|
||
|
||
基本信息:
|
||
语言: bash
|
||
文件: check-disk.sh
|
||
复杂度: level-2
|
||
创建日期: 2025-11-14
|
||
作者: CodeConscious
|
||
|
||
用途分类:
|
||
- MONITOR # 监控诊断
|
||
|
||
功能描述:
|
||
简介: "检查磁盘空间、inode使用和健康状态,提供详细的分析和建议"
|
||
详细: |
|
||
支持功能:
|
||
- 磁盘空间使用检查(总容量、已使用、可用)
|
||
- Inode使用检查(总数、已使用、可用)
|
||
- 使用阈值警报(可配置阈值,默认80%)
|
||
- 文件系统类型检测(ext4, xfs等)
|
||
- 挂载点和访问权限检查
|
||
- 性能指标分析(大文件 vs 小文件占比)
|
||
- 智能建议生成(基于检查结果)
|
||
|
||
使用场景:
|
||
- "监控服务器磁盘空间,预防空间不足导致的服务中断"
|
||
- "检查日志目录磁盘使用情况,规划日志轮转策略"
|
||
- '诊断"No space left on device"错误的根本原因'
|
||
- "定期检查系统健康状态,识别潜在问题"
|
||
- "在扩容前评估当前磁盘使用情况"
|
||
- "排查inode耗尽问题(大量小文件导致)"
|
||
|
||
使用方法:
|
||
命令: "bash check-disk.sh [路径] [阈值]"
|
||
参数:
|
||
路径: "要检查的磁盘路径(默认: /)"
|
||
阈值: "空间使用警报阈值百分比(默认: 80%,1-100之间)"
|
||
示例:
|
||
- "检查根目录(阈值80%): bash check-disk.sh"
|
||
- "检查/home(阈值85%): bash check-disk.sh /home 85"
|
||
- "检查/var/log(阈值90%): bash check-disk.sh /var/log 90"
|
||
|
||
依赖要求:
|
||
系统命令:
|
||
- bash: 4.0+
|
||
- df: 磁盘使用情况
|
||
- du: 文件大小
|
||
- find: 文件查找
|
||
- awk: 文本处理
|
||
- sort: 排序
|
||
|
||
输入输出:
|
||
输入:
|
||
- 无(从文件系统自动获取)
|
||
输出:
|
||
- stdout: 彩色格式化报告(空间使用、inode、警报、建议)
|
||
- 退出码:
|
||
- 0: 磁盘健康
|
||
- 1: 有警报
|
||
- 2: 严重问题
|
||
|
||
上次使用:
|
||
时间: 2024-11-14 11:30:00
|
||
用途: "检查服务器根目录磁盘空间,发现/var/log占用过大"
|
||
结果: "成功识别日志目录占用85%,建议清理旧日志后立即恢复20%空间"
|
||
满意度: 0.93
|
||
|
||
相关工具:
|
||
- 前置工具: 无
|
||
- 互补工具:
|
||
- toolkit/bash/analysis/analyze-logs.sh(日志分析)
|
||
- toolkit/bash/system/check-service.sh(服务健康)
|
||
- 替代工具:
|
||
- df -h(手动检查)
|
||
- ncdu(交互式磁盘使用分析)
|
||
|
||
维护记录:
|
||
2025-11-14:
|
||
- 初始创建
|
||
- 支持空间和inode检查
|
||
- 添加性能指标分析
|
||
TODO:
|
||
- 支持磁盘健康度检测(S.M.A.R.T.)
|
||
- 添加磁盘I/O性能测试
|
||
- 支持磁盘温度监测
|