插件窝 干货文章 解决Linux磁盘空间不足问题的方法

解决Linux磁盘空间不足问题的方法

sudo 文件 清理 使用 220    来源:    2025-04-17

Linux磁盘空间不足问题解决方案

快速诊断命令

首先使用以下命令快速了解磁盘使用情况:

df -h                  # 查看各分区整体使用情况
du -sh * | sort -rh    # 查看当前目录下各文件/文件夹大小
du -xh --max-depth=1 / | sort -rh  # 查看根目录下各一级目录大小

常见清理方法

1. 清理日志文件

# 查看/var/log目录大小
sudo du -sh /var/log

# 清理旧日志(保留最近7天)
sudo find /var/log -type f -mtime +7 -delete

# 清空特定大日志文件(先确认可删除)
sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/kern.log

2. 清理软件包缓存

# Debian/Ubuntu
sudo apt-get clean
sudo apt-get autoremove

# RHEL/CentOS
sudo yum clean all
sudo dnf clean all

3. 查找并删除大文件

# 查找大于100MB的文件
sudo find / -type f -size +100M -exec ls -lh {} \;

# 确认后删除不需要的大文件
sudo rm -f /path/to/large_file

4. 清理Docker资源(如使用)

docker system prune -a     # 清理未使用的容器、镜像等
docker volume prune        # 清理未使用的卷

5. 清理临时文件

sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*

高级解决方案

1. 扩展分区(如有可用空间)

# 使用gparted等工具扩展分区
# 或使用LVM扩展逻辑卷
sudo lvextend -L +10G /dev/mapper/vg-root
sudo resize2fs /dev/mapper/vg-root

2. 查找并删除重复文件

# 安装fdupes工具
sudo apt install fdupes   # Debian/Ubuntu
sudo yum install fdupes   # RHEL/CentOS

# 查找重复文件
fdupes -r /home

3. 使用ncdu进行交互式清理

sudo apt install ncdu    # 安装
ncdu /                   # 扫描整个系统

预防措施

  1. 设置日志轮转:配置logrotate定期压缩和删除旧日志
  2. 监控工具:安装monitprometheus等监控工具设置磁盘警报
  3. 定期维护:设置cron作业定期清理临时文件和缓存
  4. 合理分区:将/var/home等易增长目录单独分区

注意事项

  • 删除系统文件前务必确认其用途
  • 重要数据删除前建议先备份
  • 使用rm -rf命令时要特别小心路径参数

通过以上方法,您应该能够有效解决Linux系统中的磁盘空间不足问题。