xhost: unable to open display (linux图形安装程序切换用户的界面显示)(转)
xhost 和 DISPLAY
由於 UNIX通常配備 X 視窗,所以請先進入 X 視窗環境。 您必須要知道以下資料,才能使用遠端的 X:
- 目的地電腦的網域名稱或是 IP 位址
- 您目前所使用的電腦的網域名稱或是 IP 位址
設定 xhost 與 DISPLAY 環境參數
- 一、設定xhost
- 請先在本機下這段指令
xhost +HostName
如下圖所示,HostName 是遠端的伺服器。
- 在 HostName 前加一個加號,代表允許接受由 HostName 地方所傳來的 X 繪圖指令。
- 倘若未加 HostName,則代表可以讓所有地方的 X 繪圖指令都能進來, 這是很不安全的情況。
- 若將上述之加號改成減號,則代表拒絕由 HostName 傳來的 X 繪圖指令。
- 二、使用遠程簽入程式
- 使用 UNIX 提供的遠程簽入程式,如 telnet、ssh 等,登入遠端伺服器。 遠程簽入程式的相關使用請參閱 第三講。
- 三、設定DISPLAY參數
- 登入遠端伺服器後請下這段指令
setenv DISPLAY HostName:0.0
在這裡 HostName指的是目前近端所使用的電腦的網域名稱或是 IP 位址。如下圖所示,HostName 是我目前近端這台電腦, 在 HostName 後加一個冒號,再加上 0.0。 第一個數字 0,代表我現在近端這台電腦的第一張顯示卡, 如果有多張顯示卡,則按照順序加上去。 第二個數字 0,代表我現在近端這台電腦的這張顯示卡的第一個螢幕; 同理,如果同張顯示卡可以接多個螢幕,其數字依序往上加。
然後就大功告成了。 測試遠端 X 程式,其顯示結果如下圖
先在root下xhost +
然后再在其他用户下export DISPLAYIs you DISPLAY variable set correctly?
You have: DISPLAY=tserver1:0
but the error message refers to tserver:0.0
Should that be DISPLAY=tserver:0.0?
The xhost + command allows "any" client machine to send xwindows display
to the host running the xhost command.
So, on the host (or tserver):
# xhost +
or
# xhost + IP_address_of_client
On the client:
# DISPLAY=tserver:0.0
# export DISPLAY
# xeyes &
and watch the xeyes program on tserver terminal
转:http://libai.math.ncu.edu.tw/bcc16/5/xhost/
转:http://dbaspot.com/solaris/150228-xhost-unable-open-display.html
转:http://bbs.chinaunix.net/viewthread.php?tid=961309