vino-server和vncserver在教学环境中的典型应用

来源:http://hi.baidu.com/naruto6006/blog/item/74313809be927b3fe92488be.html

实现效果:实时全屏共享桌面给客户端,客户端的桌面完全同server端动态一致,操作全部由server端完成,客户端不需要执行任何操作

实现原理:server端开启vino-server,允许别人查看自己的桌面,监听TCP 5900端口;开启vncserver的1号桌面,监听TCP 5901端口;使用vncserver的1号桌面连接vino-server开启的0号桌面,即可实现上述效果

配置步骤:

    1:运行vino-preferences,勾选“允许其他人查看您的桌面”和“请您确认”两个方框后点击关闭按钮

vino-server和vncserver在教学环境中的典型应用_第1张图片

    2:配置vncserver

[root@yunwei ~]# grep -v '^#' /etc/sysconfig/vncservers |grep -v '^$'
      VNCSERVERS="1:root"
      VNCSERVERARGS[1]="-geometry 1440x900 -nolisten tcp "

      vncpasswd设置vnc连接密码;
       编辑vncserver 1号桌面配置文件如下:

[root@yunwei ~]# grep -v '^#' /root/.vnc/xstartup |grep -v '^$'
     vncviewer 127.0.0.1 -ViewOnly -Shared -FullScreen -FullColor

   3:启动vncserver,vncserver启动的时候会使用vncviewer自动连接0号桌面,弹出询问提示,点击“允许”按钮
[root@yunwei ~]# service vncserver start

wps_clip_image-25519

   4:配置客户端连接
       在客户端上安装vncviewer客户端;

      将server端的ssh公钥通过ssh-copy-id命令添加到客户端的authorized_keys文件中;
      将vncserver的密码文件通过scp命令传到客户端/tmp目录下,也可以指定其他位置;密码文件为/root/.vnc/passwd

      编写启动何关闭桌面脚本如下:
[root@yunwei ~]# cat start.sh
       #!/bin/sh
       ssh 192.168.50.3 "export DISPLAY=:0 && vncviewer 192.168.50.24:1 -PasswordFile=/tmp/passwd -FullScreen -ViewOnly -Shared"

[root@yunwei ~]# cat stop.sh
    #!/bin/sh
     ssh 192.168.50.3 "killall vncviewer"

5:注意事项
     红帽系统上vino-2.13.5-7.el5这个版本的vino-server包存在bug,会出现"connection reset by perr(104)"错误,升级版本到vino-2.13.5-9.el5_4可以解决该问题,Ubuntu系统上则不存在这个问题;

    如果使用3D效果,桌面则不会同步,能同步的只有鼠标的移动,这个时候就需要关闭3D特效

    可以创建桌面启动器来运行上述的两个启动和关闭脚本,实现简单开启和关闭

你可能感兴趣的:(vino-server和vncserver在教学环境中的典型应用)