linux空间不足怎么办?linux磁盘满了怎么清理?

说白了,解决Linux磁盘满问题分为三步:先考虑全局,然后查找问题,最后处理特殊情况。

首先使用df -Hl扫描一下大概情况。
当我们去年运行该项目时,我们看到一个磁盘突然填满了。
我们直接使用这个命令,在1 0秒内就定位到了有问题的磁盘。
还有一点,不要只看总量,要注意/var、/tmp等使用频率较高的目录。
它们经常无缘无故地占用空间,例如不定期清理的日志文件。
还有另一个重要细节:使用 du -sh | Sort -h (或添加 --max-deep=1 以限制级别)以深入挖掘根目录。
去年我们用这个命令发现某个项目缓存占用了5 G,当时让我很震惊。
说实话,这很令人困惑,因为有时 du 和 df 数字不匹配,特别是当你删除文件但没有完全释放它时。
此时可以使用lsof +L1 查看哪些进程还在占用该文件。

起初我以为只要删除文件就足够了,但后来我发现有些不对劲。
有些系统日志是动态生成的,不重启服务就无法清除。
例如,Nginx 每天都会记录自动滚动。
如果不重新启动服务,您可能会看到旧的日志文件占用空间但无法删除。
等等,还有一件事:如果系统突然只剩下5 %的容量,不要惊慌,这是Linux留下的紧急备份盘,可以用tune2 fs -m 0强制恢复。

下次磁盘满了,先用df查看总容量,然后结合du和find正确定位,最后用lsof查看占用情况。
这个过程可以在 9 0% 的情况下为您提供帮助。
但请注意,某些系统(例如使用 LVM 的系统)可能需要考虑添加 vgdisplay 命令。

如何检查 Linux 中的可用磁盘空间

上周,我在 Linux 系统上遇到了磁盘空间不足的问题。
我的那位朋友教了我一些检查磁盘空间的内置命令。
首先,我使用 df -h 命令快速查看整体磁盘空间使用情况。
结果显示我的根 (/) 目录中只剩下 1 GB 的可用空间。

接下来我使用du -h命令来分析特定目录的占用情况。
例如,我输入du -h /home来查看/home目录的磁盘使用情况。
结果显示,一个名为h3file的文件占用了大约3 00MB的空间。

为了检查文件大小,我使用了 ls-lh 命令。
例如,输入 ls -lh /path/to/file 可查看文件大小和权限。

有时候,我还需要查看某个文件或目录的详细统计信息,那么我就会使用stat命令。
例如输入stat /etc/passwd可以查看文件大小、inode编号等。

当我需要查看磁盘分区信息时,我会使用fdisk -l命令。
这使我可以看到磁盘总容量、分区大小和文件系统类型。

为了更直观地可视化磁盘使用情况,我使用了 GNOMEDisks 图形工具。
对于交互式分析,我安装了 ncdu 工具,它允许我通过交互式界面来分析目录占用情况。

综上所述,根据不同的需求,我可以选择合适的工具来高效管理磁盘空间。
你看,这些命令和工具在 Linux 系统上确实很有用。