e@host10g~]$netca

OracleNetServicesConfiguration:
Xlib:connectionto":0.0"refusedbyserver
Xlib:Noprotocolspecified

java.lang.NullPointerException
atoracle.ewt.lwAWT.BufferedApplet.<init>(UnknownSource)
atoracle.net.ca.NetCA.<init>(UnknownSource)
atoracle.net.ca.NetCA.main(UnknownSource)
OracleNetServicesconfigurationfailed.Theexitcodeis-1

OracleNetServicesconfigurationfailed.Theexitcodeis-1

oracle用户下执行netca等调图形界面的命令时报错,此时的解决方法是exit返回到登陆用户,执行xhost+

执行后返回

accesscontroldisabled,clinenscanconnectfromanyhost

即比如你开始连接的时候是root用户,然后切到oracle用户执行netca命令报错,那么你返回root用户执行xhost+,然后su-oracle再次执行netca命令即成功。

xhost的意义


xhost是用来控制Xserver访问权限的。
通常当你从hostA登陆到hostB上运行hostB上的应用程序时,
做为应用程序来说,hostA是client,但是作为图形来说,
是在hostA上显示的,需要使用hostA的Xserver,所以hostA是
server.因此在登陆到hostB前,需要在hostA上运行xhost+
来使其它用户能够访问hostA的Xserver.

xhost+是使所有用户都能访问Xserver.
xhost+ip使ip上的用户能够访问Xserver.
xhost+nis:user@domain使domain上的nis用户user能够访问
xhost+inet:user@domain使domain上的inet用户能够访问。
还有一些option,还是仔细看一下manual吧。

在这里提醒一下,如果要远程登陆去执行调用图形界面的动作时,最好直接用oracle用户去登陆,以避免不必要的麻烦!(这时可以直接调用图形界面)