O*****y 发帖数: 222 | 1 情况是这样的,我在办公室的 Desktop 上用 ssh -X 连接到 server 上,开启 screen
,这时执行 xclock 是可以的。但等我回到家,从家里的网络上连到 server 上在执行
xclock, 我得到
Error: Can't open display: localhost:19.0
我觉得应该是 DISPLAY 这个环境变量的问题,但不知该怎样弄。请教一下各位大虾。
谢谢! |
l****h 发帖数: 272 | 2 登录进去后,先不运行screen。
$ echo $DISPLAY
会得到: DISPLAY=localhost:x.0。x代表一个数字,10,13等等。
再运行screen,在screen里export DISPLAY
$ export DISPLAY="localhost:x.0"
这样就行了。
screen
行
【在 O*****y 的大作中提到】 : 情况是这样的,我在办公室的 Desktop 上用 ssh -X 连接到 server 上,开启 screen : ,这时执行 xclock 是可以的。但等我回到家,从家里的网络上连到 server 上在执行 : xclock, 我得到 : Error: Can't open display: localhost:19.0 : 我觉得应该是 DISPLAY 这个环境变量的问题,但不知该怎样弄。请教一下各位大虾。 : 谢谢!
|
O*****y 发帖数: 222 | 3 十分感谢!
嗯,现在好了。请问有更自动一点的方法么 :-)
【在 l****h 的大作中提到】 : 登录进去后,先不运行screen。 : $ echo $DISPLAY : 会得到: DISPLAY=localhost:x.0。x代表一个数字,10,13等等。 : 再运行screen,在screen里export DISPLAY : $ export DISPLAY="localhost:x.0" : 这样就行了。 : : screen : 行
|
i**g 发帖数: 134 | 4 自动一点点,在 ~/.bash_profile 中添加
echo DISPLAY is: $DISPLAY
省去登录后echo $DISPLAY这步
将DISPLAY写入到文件中,
if [ -n $DISPLAY ] && [ `hostname -s`=='server' ]; then
echo "export DISPLAY=$DISPLAY" > ~/.screendisplay
fi
这样通过 . ~/.screendisplay 获得 DISPLAY变量
如果有方法一次将screen中所有窗口的环境变量都换过来
就好了
【在 O*****y 的大作中提到】 : 十分感谢! : 嗯,现在好了。请问有更自动一点的方法么 :-)
|
O*****y 发帖数: 222 | 5 有个 -X 的 option, 用来 "Send the specified command to a running screen
session", 但试了下不知该怎么用。
screen -S test -X "export DISPLAY=$DISPLAY"
报错说 "-X: unknown command 'export DISPLAY=$DISPLAY"
【在 i**g 的大作中提到】 : 自动一点点,在 ~/.bash_profile 中添加 : echo DISPLAY is: $DISPLAY : 省去登录后echo $DISPLAY这步 : 将DISPLAY写入到文件中, : if [ -n $DISPLAY ] && [ `hostname -s`=='server' ]; then : echo "export DISPLAY=$DISPLAY" > ~/.screendisplay : fi : 这样通过 . ~/.screendisplay 获得 DISPLAY变量 : 如果有方法一次将screen中所有窗口的环境变量都换过来 : 就好了
|