遠程連接linux服務器時,有的時候需要把服務器上的圖形界面投影到本地來進一步操作,比如linux下安裝oracle時就需要在oracle用戶下允許視圖狀態投影到本地,這需要使用命令:
xhost +
來進行操作。比如:
//切換到oracle用戶下
su - oracle
//查看當前DISPLAY環境變量的值
echo $DISPLAY
//允許視圖界面投影到設定的ip下
export DISPLAY=192.168.112.31:0.0
//再次查看DISPLAY環境變量的值
echo $DISPLAY
//啟動命令
xhost +
1 出現問題
使用Xmanager的Xshell連接linux,進行上述操作時會出現如下問題:
xhost: unable to open display “192.168.112.31:0.0”
如圖所示:

2 解決辦法
Xmanager下出現這個問題,首先要保證linux服務器上安裝了xterm,如果還未安裝xterm,可以運行yum來安裝:
yum install xterm
其次解決辦法就是,先使用Xstart連接linux服務器,如圖所示:

注意在command命令行里輸入:
/usr/bin/xterm -ls -display $DISPLAY
如圖所示:

連接成功后直接在Xstart命令行下,或者再次使用Xshell命令行嘗試命令:
xhost +
就會出現成功的響應:
access control disabled, clients can connect from any host
如圖所示:

后面就可以正常使用遠程圖形界面的操作了。
3 知其所以然
其實根本原因是Xmanager在本地配置了:
x window session
的相關屬性,如圖所示:

如果將這個窗體關閉,如圖所示:

則Xstart的命令行窗體就會被關閉,同時“xhost +”命令也就不生效了。
