daemon-dbus cpu100%繁忙引起的VNC等服务异常

最近一台登录服务器vnc打开会出现黑屏的情况,
开始debug;
1、首先查了vnc部分,黑屏,然后strace 看到一直在select等待;
$ strace -f -F -p xxxx //xxxx是vnc server的pid
vnc看来是被block住了,但是被什么挡住或者无法使用呢?
此时su root也要等待很长时间

2、htop查看到dbus-daemon CPU 100% ,而且是持续100%
$strace -f -F -p dbus-daemon-pid //利用strace看一下dbus进程究竟在干嘛;
没有block住,而是不停的打印一些出错信息、信息是某个pid调用dbus,而dbus反馈错误,错误是(too many open files)

3、各用户的进程或者系统的最大文件打开数到顶了;
$ulimit -a
看到opfile默认是1024,太小了,开大些;

4、修改/etc/security/limits.conf !
在文件末尾添加:

  • soft nofile 65534
  • hard nofile 65534

修改普通用户的max user process
/etc/security/limits.d/90-nproc.conf 这个位置 . 我修改了里面的值 , 如下图
daemon-dbus cpu100%繁忙引起的VNC等服务异常_第1张图片
退出当前窗口执行,ulimit -a 查看是否已经修改过来了

你可能感兴趣的:(daemon-dbus cpu100%繁忙引起的VNC等服务异常)