Ubuntu下设置VNCServer

Virtual Network Computing(VNC)是进行远程桌面控制的一个软件。客户端的键盘输入和鼠标操作通过网络传输到远程服务器,控制服务器的操作。服务器的图形界面 通过网络传输会客户端显示给用户。给你的感觉就像直接在操作本地计算机一样,只是所有的程序和命令都是在服务器端执行。
1、打开一个Terminal window


2、下载 vnc4server :
    sudo apt-get install vnc4server

3、启动vnc4server:
    vnc4server
    此时系统会提示你输入密码,在通过客户端链接时将会用到这个密码。
    输入完密码后你将看到类似下边的提示:

New '****3 (****)' desktop is ****:3 (****代表主机名)

Take notice of the number after the colon (, in this case it is "3."

   启动完vnc4server后在你的主目录下将会产生一个.vnc的目录。
   此时就可以通过vnc客户端链接到服务器了。


4、停止一个vnc4server
    vnc4server -kill :3
   根据你启动时获得的数字替换此处的3。


5、打开 .vnc/xstartup 文件并编辑:
    gedit /.vnc/xstartup
    文件看起来将是这样的:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vnccon** -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
x-window-manager &


6、修改 .vnc/xstartup文件并保存
    取消unset和exec开始的行的注释,注释以xsetroot,vnccon**,xterm和twm开始的行。执行后看起来像这样:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources

#xsetroot -solid grey
#vnccon** -iconic &
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &

7、修改/etc/X11/xinit/xinitrc文件的许可,使其可执行:
    sudo chmod 755 /etc/X11/xinit/xinitrc


8、启动vnc4server:
    vnc4server
    注意:记住此处冒号后提示的数字


9、从另外的电脑登录这台服务器:
    vncviewer remote-server:3
    按照提示输入你在第三部输入的密码,成功进入远程桌面。

10、若前面执行失败导致在VNC下看不到图形界面,鼠标变成"X"形状,请查看第七条是否执行过,同时将刚建过的VNCServer删掉,vncserver -kill :1(1代表前面启动的vncserver序号)

11、Ubuntu 10.10下增添了对Windows键的定义,在里面被定义为Super键,当用户在VNC下按下字母"d"时,会被错误的当做返回桌面的快捷方式导致d无法被输入,此时可修改快捷键方式来避免此bug,新打开一个终端,在里面输入:gconf-editor,这样会弹出一个对话框,到“Apps->Metacity->Global keybingdings"中找“show desktop”,将其默认值<Super>D改为<Ctl><Alt>D即可。