先检查磁盘使用情况,再清理日志、缓存和临时文件,必要时进行LVM扩容。使用df -h和du -sh定位占用空间大的分区和目录,重点清理/var/log、/tmp、/var/cache等目录,通过find查找并删除大文件,若仍不足则在LVM环境下扩展卷组和逻辑卷,并调整文件系统大小以释放新空间。

当Linux系统提示磁盘空间不足时,不要慌张。多数情况下,通过合理的清理和扩容操作可以快速恢复系统运行。本文将带你一步步排查磁盘使用情况,并提供实用的清理方法与磁盘扩容方案。
检查磁盘使用情况
首先要明确是哪个分区满了。使用以下命令查看各挂载点的磁盘使用率:
du -h / 2>/dev/null | head -20df -h
df -h 能快速列出所有分区的使用情况,重点关注使用率接近100%的分区。接着用 du -h 定位具体占用空间大的目录,比如 /var、/home、/tmp 等。
常见可清理目录与操作
以下目录通常容易积累大量无用文件,适合优先清理:
-
/var/log:日志文件堆积是磁盘满的常见原因。可删除旧的日志(如 messages-*.gz、secure-*),或使用 journalctl 清理 systemd 日志:
sudo journalctl --vacuum-time=7d -
/tmp 和 /var/tmp:临时文件可安全清理,执行:
sudo rm -rf /tmp/* /var/tmp/* -
/var/cache:包管理器缓存可部分清除。例如 yum 用户运行:
sudo yum clean all
apt 用户使用:
sudo apt-get clean -
用户大文件:检查 /home 下用户目录是否有大文件,可用:
du -sh /home/* | sort -hr
查找并删除大文件
若不确定哪些文件占空间,可用命令查找大于指定大小的文件:
find / -type f -size +100M 2>/dev/null | xargs ls -lh列出所有大于100MB的文件,人工判断是否可删。注意不要误删系统关键文件,如数据库文件或应用数据。
扩展磁盘空间(LVM扩容示例)
如果清理后仍不够用,需考虑扩容。若使用LVM管理磁盘,可在添加新硬盘或扩展虚拟磁盘后进行扩容:
- 先确认当前卷组和逻辑卷:
vgdisplay
lvdisplay - 假设已添加新物理磁盘 /dev/sdb,将其加入卷组:
pvcreate /dev/sdb
vgextend centos /dev/sdb - 扩展逻辑卷(以根分区为例):
lvextend -l +100%FREE /dev/mapper/centos-root - 最后调整文件系统大小:
resize2fs /dev/mapper/centos-root # ext4
xfs_growfs / # xfs
非LVM环境建议通过备份数据、更换更大硬盘并重新分区的方式扩容。
基本上就这些。定期监控磁盘使用、设置日志轮转策略,能有效避免再次出现磁盘满的问题。










