lsof 显示 .xsession-errors 删除的文件占用了所有磁盘空间

lsof 显示 .xsession-errors 删除的文件占用了所有磁盘空间

我配置了一个 cronjob 来截断~/.xsession-errors文件,因为它占用了所有磁盘空间。这使文件小于 500K。磁盘空间仍然被填满。

lsof +L1 | grep deleted显示许多 xsession-errors 删除的项目实例将填满所有磁盘空间。只有重新启动才能清除此问题。

可能是什么原因?

答案1

谢谢你的建议。我找到了写入 .xsession-errors 文件的内容。kpatient 版本 19 有一个会填满磁盘的错误。版本 21 修复了这个问题。

答案2

即使您已重置文件系统对文件大小的认识,打开的程序~/.xsession-errors也无法知道这一点。在任何进程打开文件时实际删除文件(并释放空间)违反了文件系统的方式。这使得日志记录程序只需“写入下一个块”,而不是“打开文件;定位到结束。读取部分填充的块;写入数据;关闭文件”每次记录一行信息时

阅读man该程序的页面,一些程序在收到时会重置日志文件signal,其他程序则必须被终止并重新启动。

您如何启动和停止 X 服务器?看起来您让 X 进程闲置着,并且日志文件打开了。查看ps -ef

您可以使用fuser它来向不情愿的进程发送信号。

man fuser pkill kill X ps;man -a signal

相关内容