在deepin、ubuntu和Centos 8上通过了测试。
约定的sshname是在. ssh/config中显示的名称,也可以是IP地址。
注:所有用于测试的服务器的sshname都是L1707
服务器debian系:
sudoaptinstalltightvncservercentos 8:
sudoyuminstalltigervnc-server.x86 _ 64 vncserversearchstar @ l 17073360~$ vncserveryouwillrequireapasswordtoaccesssyourdeeed ngt Hof8. verify : wouldyouliketoenteraview-only password (y/n )? new ' x ' desktop ISL 170733601 creatingdefaultstartupscript/home/search star/. VNC/xstartupstartingapplicationsper xpecifier . VNC/l1707:1.log客户端首先构建ssh隧道,其语法如下
sh-g-lxxxx 3360 ip:5901 sshname个人理解:其原理是ssh登录到一个名为ssh name的服务器,将该服务器纳入视野,在本地xxxx端口和IP :5901端口之间传输数据相当于这两个端口成为了一个端口。
在我们的情况下,命令写如下。
sh-g-l 5901: localhost :5901 ssh name现在已将服务器本身的5901端口映射到本地5901端口。
然后,保留此shell,打开另一个shell并打开vncviewer:
sudoaptinstallxtightvncviewervncviewerlocalhost :1
任务栏不见了。
如果需要在终端上运行GUI程序,请首先检查是否设置了DISPLAY环境变量。
如果echo $DISPLAY输出不为空,则可以直接在终端上运行GUI命令。
如果输出未设置为空说明,则可以手动设置。
export DISPLAY=:1然后GUI命令会在之前打开的桌面上显示窗口。
xclock
关闭vncserver vncserver -kill :1参考文献http://www.zsy think.net/archives/2450
3359 blog.csdn.net/cuma 2369/article/details/107668471