你遇到的情况可能与Linux系统如何处理文件有关。在Linux系统中,当一个文件被打开,即使它被删除了,只要还有进程在使用它(例如通过一个文件描述符),那么该文件所占用的磁盘空间仍然无法被释放。换句话说,删除操作只是删除了文件名和索引节点(inode),但是数据块仍然被占用。
重启服务器可能会结束那些仍然在使用这些"被删除但仍被占用"文件的进程,这样这些文件所占用的磁盘空间就会被释放。
那些可能产生大量临时文件并可能长时间占用它们的进程可能包括日志处理程序、数据库服务器、或者其它需要使用临时文件的程序。在重启之前,你可以使用 lsof 命令查看哪些被删除但仍然被占用的文件,例如:
lsof | grep '(deleted)'
这将列出所有被删除但仍被占用的文件。你也可以找出具体是哪个进程在使用这些文件。
所以,你的服务器磁盘空间在重启后释放的原因,可能是因为重启结束了那些仍在占用"被删除但仍被占用"文件的进程。未来,你可以考虑定期查看并清理这类文件,以防止磁盘空间被用尽。