Linux磁盘满了详细排查方法
🍁前言
请注意,在进行任何删除操作之前,请确保你知道哪些文件可以安全删除,并备份重要文件,以免意外丢失数据。
- 当 Linux 磁盘空间满了时,可以按照以下步骤进行排查:
🍁检查磁盘使用情况
运行 命令来查看磁盘使用情况。该命令将显示每个挂载点的磁盘使用量,以及可用空间和使用率。
df -h
🍁确定最大的目录或文件
使用 命令来逐级检查某个目录下各个子目录的大小。从根目录开始,逐级深入,以找到占用最多空间的目录或文件。
du -h --max-depth=1 /path/to/directory
🍁查找大文件
运行 命令来查找大于 100MB 的文件。这将扫描整个文件系统,你可以根据需要调整大小阈值。
find / -type f -size +100M
🍁清理不必要的日志文件
检查
/var/log
目录下的日志文件,特别是较旧的日志文件,可以考虑备份或删除不再需要的日志文件。
🍁清理临时文件
检查
/tmp
目录下的临时文件,可以使用find /tmp -type f -mtime +7 -exec rm {} \;
命令删除一周前的临时文件。
🍁查找被删除但仍然打开的文件
- 运行
lsof | grep deleted
命令来查找已被删除但仍然被进程占用的文件。这些文件不会释放磁盘空间,直到相关进程关闭。
- 如果出现
no pwd entry for uid xxx
执行下列代码llsof -w | grep deleted
只查看删除的- 还有一种情况是使用了
mount
命令对文件夹进行了绑定需要释放
- 删除挂载
umount /dev/sdb1
🍁清理软件包缓存
运行
apt-get clean
(Ubuntu/Debian)或yum clean all
(CentOS/RHEL)命令来清理软件包管理器的缓存。
🍁删除不必要的大文件
如果发现一些不再使用的大文件,可以备份它们并删除以释放磁盘空间。
🍁检查日志和应用程序错误
检查系统日志文件(如
/var/log/syslog
或/var/log/messages
)以及应用程序日志,看是否有异常导致磁盘空间快速耗尽。
🍁考虑扩展磁盘空间
如果以上步骤无法解决问题,可能需要考虑扩展磁盘空间,以便为系统提供更多可用空间。
`