关于 国产麒麟系统上长时间运行Qt程序.xsession-erros文件占满磁盘导致无法写入 的解决方法

Posted 长沙红胖子Qt

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于 国产麒麟系统上长时间运行Qt程序.xsession-erros文件占满磁盘导致无法写入 的解决方法相关的知识,希望对你有一定的参考价值。

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/128660728

红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…(点击传送门)

Qt开发专栏:各种问题解决(点击传送门)

国产麒麟系统相关开发


问题

  在国产麒麟系统上运行qt界面程序,运行时间较长如一天几天后,发现日志和数据无法写入(日志,各种协议缓存文件,指定数据文件较多),经检查是磁盘满了,需要重启解决。


原因

  发现是xsession-errors文件非常大导致占满磁盘,其他无法写入。

xsession-errors文件

  .xsession-errors文件是X Window系统记录Linux图形环境中发生的所有错误的位置,运行基于X Window的图形化界面,任何图形化界面的应用都可能将错误信息写入这个文件,只要磁盘允许,就会无限增长,任何 Linux发行版都会受到影响。
  /etc/X11/Xsession文件中有控制机制,当这个文件超过一定大小,每次启动图形化界面环境时都会清空这个文件,但是并不是所有人的Linux每天都关机,Linux用户可能不重启计算机长达数周甚至数月,因此这个文件可能达到十分庞大的大小。
  该文件通常位于home目录下,它可能导致home目录磁盘配额爆满,甚至,如果在安装系统的时候没有合理的分区,把家目录放在了和根目录一个分区下,它甚至会导致计算机停止工作。


解决方法1:将错误写入/dev/null(推荐此方法)

  编辑 /etc/X11/Xsession (X Window的配置文件):
  
  打开文件:

sudo vi /etc/X11/Xsession

···
  找到ERRFILE
  在这里插入图片描述

ERRFILE=$HOME/.xsession-errors

  修改为:

ERRFILE=/dev/null

解决方法2:将/home/yang/.Xresourse改成只读文件

  无法写入可能会损失很小很小的性能,基本忽略!!!

cd
chmod 0444 .xsession-errors
ls -l .xsession-errors

  


若该文为原创文章,转载请注明原文出处
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/128660728

以上是关于关于 国产麒麟系统上长时间运行Qt程序.xsession-erros文件占满磁盘导致无法写入 的解决方法的主要内容,如果未能解决你的问题,请参考以下文章

关于 国产麒麟系统上长时间运行Qt程序根目录/下磁盘空间占用100%导致无法写入 的解决方法

关于 国产麒麟系统上长时间运行Qt程序.xsession-erros文件占满磁盘导致无法写入 的解决方法

关于 国产麒麟系统上长时间运行Qt程序.xsession-erros文件占满磁盘导致无法写入 的解决方法

关于 国产麒麟系统上长时间运行Qt程序.xsession-erros文件占满磁盘导致无法写入 的解决方法

麒麟系统开发笔记:在国产麒麟系统上使用linuxdeployqt发布qt程序

关于 国产麒麟系统Qt强制退出应用程序qApp->exit()无效 的解决方法