Linux云服务器磁盘空间查看全攻略:8种实用方法详解
作为Linux系统管理员或云服务器用户,掌握磁盘空间监控技能至关重要。本文将详细介绍8种专业方法,助您轻松掌握服务器存储状况,预防"磁盘已满"的灾难性错误。
一、基础命令:df与du的黄金组合
1. df命令:全局概览
df -h是最常用的磁盘检查命令:
# 人性化显示磁盘空间 df -h # 输出示例: Filesystem Size Used Avail Use% Mounted on /dev/vda1 50G 28G 20G 58% /
参数说明:
- -h:人类可读格式(自动转换GB/MB)
- -T:显示文件系统类型
- -i:显示inode使用情况
2. du命令:深度分析
当需要定位大文件时:
# 查看当前目录各文件夹大小 du -sh * | sort -h # 查找/var目录下最大的10个文件 du -a /var | sort -n -r | head -n 10
二、高级工具:专业运维的利器
3. ncdu:可视化神器
安装使用:
# CentOS安装 yum install ncdu -y # Ubuntu安装 apt install ncdu -y # 使用方式(按大小排序) ncdu /
4. lsof:查找被删除仍占空间的文件
# 查找已删除但未释放空间的文件 lsof | grep deleted # 输出示例: apache2 1234 root 125r REG 253,0 2.5G 123456 /var/log/apache.log (deleted)
三、自动化监控方案
5. 设置告警阈值
在/etc/crontab中添加:
# 每天检查磁盘空间
0 0 * * * root df -h | awk '$5+0 > 80 {print $1 " " $5}' | mail -s "Disk Alert" [email protected]
6. 使用Prometheus+Grafana
配置node_exporter监控指标:
# PromQL查询语句
100 - (node_filesystem_avail_bytes{mountpoint="/"} * 100 / node_filesystem_size_bytes{mountpoint="/"})
专家建议
- 生产环境建议保留至少20%的可用空间
- /var/log/和/tmp/是常见的空间黑洞
- 使用LVM可以更灵活地扩展分区
- 定期清理Docker无用镜像:
docker system prune -a
通过本文介绍的8种方法(基础命令4种+高级工具2种+自动化方案2种),您已经可以全面掌握Linux云服务器的磁盘空间管理。建议将df -h纳入日常巡检流程,对关键分区设置90%的告警阈值,结合日志轮转策略(logrotate)预防存储问题。
