在我们的一些服务器上/var/log
,它是一个单独的 ext4 分区,显示 4.8G 空间的 100% 正在使用中。但它实际上占用了大约 200M 的磁盘空间。应用程序仍然可以将日志写入目录。这个错误的原因可能是什么?
其他信息:
Debian 版本:9.9
Inodes 使用 1%
在我们的一些服务器上/var/log
,它是一个单独的 ext4 分区,显示 4.8G 空间的 100% 正在使用中。但它实际上占用了大约 200M 的磁盘空间。应用程序仍然可以将日志写入目录。这个错误的原因可能是什么?
其他信息:
Debian 版本:9.9
Inodes 使用 1%
这通常发生在您删除打开的文件时。假设您有一个大文件并且有一个进程写入它并且您将其删除 - 在文件关闭之前空间一直被占用,因为无法通知进程文件已被删除。
首先,您需要找到导致问题的进程 - 尝试
lsof | grep deleted
,现代 linux 会告诉您。如果不是 - 用于lsof
查找目录中未列出的打开文件。其次,您需要刷新进程,通常 kill -HUP 有帮助,应该重新打开文件。如果没有 - 重新启动相应的服务。
下次你需要释放空间-使用
truncate --size 0 aaa.log
或只是> aaa.log
。这将截断文件,但保持原样。