Can't connect to X11 window server using ':0' as the value of the DISPLAY variable

linux非root用户无法使用图形化界面

(DISPLAY变量相关)

1.centos7上用weblogic用户安装weblogic,运行/weblogic/wls12213/oracle_common/common/bin/config.sh创建域时无法启动向导界面,报错无法连接x server.
切换成root是OK的。
2.root创建域之后,权限赋给weblogic用户,启动后部署工程又报错
Can't connect to X11 window server using ':0' as the value of the DISPLAY variable_第1张图片
3.尝试root用户执行xhost + 127.0.0.1
部署时出现了新的报错:
错误 java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment
Could not initialize class sun.awt.X11GraphicsEnvironment
Can't connect to X11 window server using ':0' as the value of the DISPLAY variable_第2张图片
然后在weblogic的启动文件里加上jvm参数:-Djava.awt.headless=”true”
Can't connect to X11 window server using ':0' as the value of the DISPLAY variable_第3张图片
还是同样的报错
**4. 接下来尝试 修改weblogic所属的用户组 usermod -G root weblogic
还是同样的报错。
然后尝试了root用户部署后换普通用户启动,还是一样的报错
5. 最后是切换成weblogic用户登陆后正常,原因是root用户的图形化界面对应DISPLAY值是:0,weblogic用户是:1,用root登陆后,不export更改DISPLAY的值,使用图形化的程序就无法启动成功。下面这个文章讲解详细
参考:https://blog.csdn.net/taydy/article/details/54296501
关于XServer: https://blog.csdn.net/vic_qxz/article/details/79073558

你可能感兴趣的:(Can't connect to X11 window server using ':0' as the value of the DISPLAY variable)