为什么.xsession-errors.old文件如此之大?

问题

许多用户(包括我)从一个时刻发现到另一个用户磁盘空间真的很奇怪。 有一天我有50Gb免费,而下一次我有3Gb,它只是疯了。

这种情况发生在不同版本的Ubuntu(11.04,12.04和12.10)。

其中一些用户在此网站上创建了一些问题,其中一些:

  • 磁盘使用非常奇怪
  • Ubuntu 12.10只识别3GB的可用空间
  • 为什么我的磁盘空间使用率很低?

@NathanWienand 发现问题是由.xsession-errors.old文件引起的(可以在$ HOME目录中找到),他和其他用户解决了删除文件的问题。 可以拥有此文件的大小的示例是~100Gb,不合理..

  • 为什么会这样?
  • 删除文件是解决它的唯一方法吗?
  • 是不是有另一种方法来解决这个问题,具有很大的周期效应?
  • 此问题是否仅影响64位系统的用户?

如果您要在此处添加内容,请随时编辑问题。

你可以调查这个问题。 是的,我知道这是一个大文件,但通过丢弃数据并让计算机完成工作,可以:

 cat .xsession-errors* | \ egrep -v '^$' | \ sed -e 's/[0-9][0-9]\+/#NUM#/g' | \ sort | \ uniq -c | \ sort -rn | \ tee counts.out | \ less -XMersj3 

一些消息(在我的系统上没有问题)如:

  38 /usr/share/software-center/softwarecenter/ui/gtk3/widgets/exhibits.py:#NUM#: Warning: Source ID #NUM# was not found when attempting to remove it 38 GLib.source_remove(self._timeout) 36 (nautilus:#NUM#): Gdk-CRITICAL **: gdk_window_get_origin: assertion 'GDK_IS_WINDOW (window)' failed 

比其他人更频繁地发生(38,38,36次),因此值得进行更多调查。

其他:

  1 compiz (core) - Info: Loading plugin: ccp 1 compiz (core) - Info: Loading plugin: animation 

另一件事是寻找已删除但仍然打开的文件:

  sudo lsof / | egrep 'PID|(deleted)' 

寻找大的SIZE / OFF值。

并寻找大型打开文件:

 sudo lsof / | \ awk '{if($7 > 1048576) print $7/1048576 "MB" " " $9 }' | \ sort -n -u 

我不确定为什么会这样,但这对评论来说有点大。

我只是通过运行这些命令来阻止它们被创建:

rm .xsession-errors.old

touch .xsession-errors.old

sudo chattr +i .xsession-errors.old

因此,删除该文件,创建一个新文件,然后设置immutable属性以停止写入或读取任何内容。

您需要退出。

希望能帮助到你。