root用户无法打开xclock_oracle安装过程中图像界面启动问题(xdmcp) | 学步园

本文详细介绍了在Linux环境下,root用户无法打开xclock以及Oracle图形化安装过程中的图像界面启动问题。关键在于XDMCP的配置,包括启用xdmcp、设置Xaccess和启动kdm。在解决Oracle安装问题时,需注意DISPLAY环境变量的正确设置,直接使用oracle用户登录并配置。此外,还提到了java.awt.X11GraphicsEnvironment错误的解决方法,建议直接以oracle用户登录避免权限问题。
摘要由CSDN通过智能技术生成

小小唠叨一下,我认为有2点可以注意下,第一,xdmcp参数配置要细心,第二,直接用oracle用户登录并配置启动图像界面之前的参数。

xdmcp原理

转载一篇xdmcp原理的相关文章

导读:

几个人同时有x windows时。

X server :主要是负责显示。

x client:主要是负表运算。

设定XDMCP

XDM是X Display Manager的简称。功能就是管理操控xserver的显示。

主要有两种方式:

X Server/client在同一部机器上时,那么启动xdm之后,就会产生一个X server了,

如果不在一部机器上时,启动xdm之后,他会透过网络去管理远程那部主机的

x server了,而XDMCP(X Display Manager Control Protocol)就是负责监听来自网络上面对于xdm的要求。

由X11(Centos使用的是Xorg这个计划的X11)提供的display manager为xdm,设定档在/etc/X11/xdm/xdm-config.而KDE与GNOME也都有自已的display manager管理程序。分别是kdm与gdm,设定档则是/etc/X11/xdm/kdmrc与/etc/X11/gdm/gdm.config我们可以透过三者中任何一个的display manager 的设定档案来启动xdmcp这个协议呢?

要启用xdmcp的功能真的很简单,修改/etc/X11/xdm/xdm-config这个档案,找到底下一行(一般是最后一行):

DisplayManager.requestPort:0

将它改成:

!DisplayManager.requestPort:0

就是批注掉,然后重新启动xdm就好了。KDM与GDM的设定也类似,底下的就是以kdm来进行xdmcp的架设。

1。先让kdm支持xdmcp模式。

[root@test root]#cd /etc/X11/xdm

[root@test xdm]#vi kdmrc

[Xdmcp]

Enable=1

#大约是在70行左右。

2。让client可以透过X来登系统!与权限有关的设定。

[root@test xdm]#vi Xaccess

*

#为了安全性上面的需要,想要登入X的话,得要通过这个档案的验证。

#找到上面这一行,如果没有这一行的话,

#就自行加入。这表示(不论来自哪里,我都接受X的登入)

3.启动kdm。

[root@test root]#/etc/init.d/xfs start

#就如同我们上面提到的,kdm执行后,可能的话,会在本机端启动一个X server#的。而我们这一版的Xorg要顺利的启动,得要先启用X Font server才行。

#否则的话,您就得要到/etc/x11/xorg.conf里面去设定好每一个字型路径才行。

[root@test xdm]#kdm

[root@test xdm]#netstat -tlunp

tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 5920/x

tcp 0 0 :::6000 :::* LISTEN 5920/X

udp 0 0 :::177 :::* 5918/kdm

#要看到有177的udp port才行,因为那是xdmcp协议的监听端口。

#不过,如果要看看是否有成功启动X的话,就得要查阅6000这个port。

#如果没有看到port 6000的话,请查阅/var/log/Xorg.0.log喔!

#如果想要设定开机启动的话,可以利用chkconfig加入xfs.

#也可以将kdm这个指令写到/etc/rc.d/rc.local这个档案中。

客启端登入:

linux主机是客户端:

0。请务必要在X Window当中,进入的方式有:

[root@client ~]#startx

[root@client ~]#init 5

1.在X Window 的画面当中,启用一个shell,然后输入:

[root@client ~]#xhost + 192.168.1.100

192.168.1.100 being added to access control list

#假设我们刚刚那部主机的IP为192.168.1.100

[root@client ~]#init 3 <==关闭x server

2.在文字接口下输入:

[root@client ~]#X -query 192.168.1.100

#进入x-window

客户端windows主机.

可以用x-win32进入

利用Xmanager的Xshell工具,SSH远程连接至Linux主机,在linux命令提示符下直接运行gnome-session或startkde,Xmanager会自动运行Xmanager-Passive来接收由SSH转发至本地的图形界面信息

关闭XDMCP

[root@test xdm]#killall -9 kdm

[root@test xdm]#/etc/init.d/xfs stop

######################################################

因xhost命令和DISPLAY环境变量操作不当导致无法启动Oracle图形化安装界面

安装oracle时发现在root用户下可以启动xclock,可以看到小闹钟,可是一切到oracle用户下就不能启动。郁闷了1小时,下班了,回家之后再上网查到这么一篇文章,看来已经有人遇到了。我试了一下,好使。记录备案。

今天在AIX操作系统上安装Oracle

11.1时,遇到在执行runInstaller后无法启动安装图像化界面,甚是郁闷。问题现象:使用Xmanager2.0软件登陆AIX桌面,root用户可以启动xclock钟表,在使用“xhost

+”命令后su到oracle用户后便始终无法看到xclock命令对应的那个可爱的小钟表,因此也无法启动Oracle的图形化安装界面。安装进度就此Delay。终极解决方法:1.使用Xmanager登陆到root用户的桌面,开启一个terminal;2.关键的第一步:设置DISPLAY环境变量为登陆机器的IP地址(注意这里你本机的IP地址,我本机的IP是10.10.11.16);# export DISPLAY=10.10.11.16:0.0# echo $DISPLAY10.10.11.16:0.03.使用“xhost +”命令;# xhost +access control disabled, clients can connect from any host4.切换到oracle用户;# su - oracle5.关键的二步:在oracle用户再一次设置DISPLAY环境变量为登陆机器的IP地址;如果不操作这一步骤,su到oracle用户后这个环境变量可能会丢失——郁闷之所在。$ export DISPLAY=10.10.11.16:0.0$ echo $DISPLAY10.10.11.16:0.06.另外一个关键注意事项;注意DISPLAY设置的内容,一定要参考Xmanager左上角的提示内容进行设置,否则将会遭受到另一番挫折。很有可能需要设置DISPLAY变量为下面的样子$ export DISPLAY=10.10.11.16:1.0$ echo $DISPLAY10.10.11.16:1.07.小结巧妇难为无米之炊,如果选择图像化方式部署Oracle,那么顺利启动图像化安装界面就非常重要。“xhost +”和“DISPLAY”的混合使用不当将会导致非常惨烈的结果,引以为戒!

########################################

数据库安装过程报错:at.java.awt.X11GraphicsEnvironment解决之道

解决办法:

首先检查需要安装的包是否已经安装完毕。其次,直接用oracle用户登录,不要用root用户然后su到oracle,不要偷这点懒,免得花更多的时间来排错。

报错如下:

java.lang.reflect.InvocationTargetException

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:44)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:39)

at java.lang.reflect.Constructor.newInstance(Constructor.java:516)

at IDEP.launchSetup(IDEP.java:293)

at IDEP.setup(IDEP.java:154)

at IDEP.main(IDEP.java:62)

Caused by: java.lang.NoClassDefFoundError: sun.awt.X11GraphicsEnvironment (initialization failure)

at java.lang.J9VMInternals.initialize(J9VMInternals.java:140)

at java.lang.Class.forNameImpl(Native Method)

at java.lang.Class.forName(Class.java:136)

at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:68)

at sun.awt.X11.XToolkit.(XToolkit.java:89)

at java.lang.J9VMInternals.initializeImpl(Native Method)

at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)

at java.lang.Class.forNameImpl(Native Method)

at java.lang.Class.forName(Class.java:136)

at java.awt.Toolkit$2.run(Toolkit.java:846)

at java.security.AccessController.doPrivileged(AccessController.java:202)

at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:838)

at sun.swing.SwingUtilities2$AATextInfo.getAATextInfo(SwingUtilities2.java:140)

at javax.swing.plaf.metal.MetalLookAndFeel.initComponentDefaults(MetalLookAndFeel.java:1557)

at javax.swing.plaf.basic.BasicLookAndFeel.getDefaults(BasicLookAndFeel.java:142)

at javax.swing.plaf.metal.MetalLookAndFeel.getDefaults(MetalLookAndFeel.java:1592)

at javax.swing.UIManager.setLookAndFeel(UIManager.java:542)

at javax.swing.UIManager.setLookAndFeel(UIManager.java:582)

at javax.swing.UIManager.initializeDefaultLAF(UIManager.java:1346)

at javax.swing.UIManager.initialize(UIManager.java:1435)

at javax.swing.UIManager.maybeInitialize(UIManager.java:1423)

at javax.swing.UIManager.getDefaults(UIManager.java:663)

at javax.swing.UIManager.put(UIManager.java:992)

at com.memoire.vainstall.VAGlobals.setLanguage(Unknown Source)

at com.memoire.vainstall.Setup.(Unknown Source)

... 7 more

Caused by: java.lang.InternalError: Can't connect to X11 window server using '132.104.64.177:0.0' as the value of the DISPLAY variable.

at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)

at sun.awt.X11GraphicsEnvironment.access$100(X11GraphicsEnvironment.java:52)

at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:155)

at java.security.AccessController.doPrivileged(AccessController.java:202)

at sun.awt.X11GraphicsEnvironment.(X11GraphicsEnvironment.java:131)

at java.lang.J9VMInternals.initializeImpl(Native Method)

at java.lang.J9VMInternals.initialize(J9VMInternals.java:200)

at java.lang.Class.forNameImpl(Native Method)

at java.lang.Class.forName(Class.java:136)

at sun.swing.SwingUtilities2.isLocalDisplay(SwingUtilities2.java:1407)

at javax.swing.plaf.metal.MetalLookAndFeel.initComponentDefaults(MetalLookAndFeel.java:1556)

... 18 more

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值