若该文为原创文章,转载请注明原文出处
本文章博客地址: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