.xsession-errors文件很大。 我怎么禁用?

我已经访问了30多个关于同一问题的不同论坛问题,但没有一个能够指出我正确的方向。

我不在乎导致这个问题的原因。 我不在乎错误消息说的是什么。

我想彻底禁止这种情况发生。

我不想只在这个.xsession-errors文件中禁用我系统上的所有日志记录。

我已经尝试了/ dev / null它不起作用。 我把它设为只读,只是创建一个新文件.xsession-errors.jkhbjhjh。 我甚至在/ etc / X11 / xsession中注释掉了文件生成。

我正在运行一个电子商务网络服务器,将在不到90天的时间内退役。 我只需要让网站保持足够长的时间,让它们全部转移到我的新系统。 这个日志文件每周2到3次填满我的硬盘,使我的网络商店无法运行。

为了清楚起见,我想知道如何禁用.xsession-errors日志记录。 我用gnome运行Ubuntu 9.10。 我知道它不再受支持了,但是再次,这台服务器在不到90天的时间内退役就没关系了。

有一个名为/ etc / X11 / Xsession的文件。 这将创建一个tmp文件的符号链接。 IE浏览器。 从第61行开始

ERRFILE=$HOME/.xsession-errors # attempt to create an error file; abort if we cannot if (umask 077 && touch "$ERRFILE") 2> /dev/null && [ -w "$ERRFILE" ] && [ ! -L "$ERRFILE" ]; then chmod 600 "$ERRFILE" elif ERRFILE=$(tempfile 2> /dev/null); then if ! ln -sf "$ERRFILE" "${TMPDIR:=/tmp}/xsession-$USER"; then message "warning: unable to symlink \"$TMPDIR/xsession-$USER\" to" \ "\"$ERRFILE\"; look for session log/errors in" \ "\"$TMPDIR/xsession-$USER\"." fi else errormsg "unable to create X session log/error file; aborting." fi 

您可以将此Xsession文件cp发送到Xsession.bak。 然后去一个头并将你的ERRFILE指向/ dev / null IE。 第83行

 exec >> /dev/null 2>&1 

解决方法相当依赖于您正在使用的桌面管理器。 更改/ etc / X11 / Xsession文件在某些​​情况下可以正常工作,但是如果您使用的是gnome,则应该将以下行添加到〜/ .gnomerc

 rm -r ${HOME}/.xsession-errors ln -s /dev/null ${HOME}/.xsession-errors 

希望这种微妙之处能够帮到某些人。

如果你已经尝试过这个解决方案,但发现它不能令人满意,那么我只想写一个每小时删除一次文件的cron条目。

 crontab -e 

添加以下条目:

 @hourly rm -rf /path/to/xsession/files/.xsession-errors* 

快速而肮脏,但function齐全!

如果您希望它更快,只需将@hourly更改为*/2 * * * *
这将每两分钟删除一次文件。

做就是了

 rm /wherever/you/have/.xsession-errors ln -s /dev/null /wherever/you/have/.xsession-errors 

并重新启动计算机(这样,您可以关闭所有使用.xsession-errors的程序)

对.xsession-errors的所有访问都将被重定向到/ dev / null,一个“文件”意味着接收文本并将其丢弃

我遇到了和你一样的情况,并在网上尝试了那些建议的解决方案,似乎都失败了。

最后,我在我的Ubuntu文件/etc/X11/Xsession中注释掉了“ERRFILE = $ HOME / .xsession-errors”这一行。

然后.xsession-errors文件不再出现。

在我的测试中,此错误日志文件用于服务vino-server,您可以在进程列表中找到它( ps -ef|grep vino )。 它是一个VNC服务器进程。 我不知道网络中有一些程序试图通过VNC客户端登录我们的服务器,以便在此日志文件中产生大量错误消息。

功率

尽管年龄太大,但问题仍然存在。 我在使用SSD的笔记本上遇到了同样的麻烦。 我需要将它移动到TMPFS,我已经安装了/ tmp。关于移动文件的所有建议,截断它,chowning / chattring对我的xubuntu 13.04不起作用。 似乎文件路径被硬编码到xfce二进制文件中。 我grep了所有的文件系统。 除了/ etc / X11 / Xsession之外,没有该文件的出现,并且更改ERRFILE会导致什么都没有。

顺便说一下,在/etc/rc.local中使用这些文件的任何操作都不会产生任何sesnse因为rc.local触发besore Xsession启动。

所以我在homedir中创建了一个名为.xfce-customizations的文件,并在其中添加了以下行:

 ln -sf $(mktemp) /home/remort/.xsession-errors ln -sf $(mktemp) /home/remort/.xsession-errors.old 

之后,我在“设置管理器” – >“会话和启动 – 应用程序自动启动”中使用我的xsession将此文件添加到自动启动。 重新启动并登录到我的xfce后,两个文件都符号链接到临时文件。 因此,您仍然可以在正常运行时间内分析日志,因此它是非常干净的解决方案。