install vncserver on ubuntu to realize the Graphical access

ubuntu安装vncserver实现图形化访问

Refer from: http://help.aliyun.com/manual?helpId=1371

请注意:

如果在安装中部分软件无法安装成功,说明软件源中缺包,先尝试使用命令#apt-get update更新软件源后尝试安装。如果还是不行,需要更换软件源。更换步骤:

a)输入命令#cp /etc/apt/sources.list /etc/apt/sources.list_backup

b)输入命令#vi /etc/apt/sources.list

c)添加其他软件源(推荐使用163、中科大、上海交大等速度较快的国内源)

d)保存并关闭窗口

e)输入命令:#apt-get update

 

 

下面我们开始安装了哦!

root账户名密码登陆后

1.ubuntu上安装vncserver,使用命令:# apt-get install vnc4server

clip_image001

clip_image002

clip_image003

2.开启vnc服务,输入命令:#vncserver

clip_image004

首次启动会要求设置密码,后面可以使用vncpasswd修改;

clip_image005

看到 New ‘****:1 (****)’ desktop is ****:1 (****代表主机名)即表示启动vnc成功,在主目录下产生一个.vnc目录;

clip_image006

3.在客户端下载“vnc客户端软件,进行链接

在服务器栏输入:ip1

clip_image007

clip_image008

输入用户名密码信息后,可以看到vnc连接页面

clip_image009

但是,这个页面好像不是我们想要的图形化界面。vncserver默认使用的窗口管理器是twm,这是一个很简陋的窗口管理器,下面我们把桌面改成GNOMEKDE

4. 备份原有xstartup文件: #cp ~/.vnc/xstartup  ~/.vnc/xstartup.bak

下面我们需要修改vnc启动文件,使用命令:#vi ~/.vnc/xstartup

打开后如下图所示

clip_image010

我们需要把上图中“x-window-manager &”这一行注释掉,然后在下面加入一行“gnome-session &”,或者是“startkde &”,分别启动GNOME桌面和KDE桌面。这里我们安装的是GNOME桌面。修改后如下图所示:(具体修改步骤:打开文件后,点击“insert”按钮,这时就可以输入了,在“x-window-manager &”前加“#”,然后回车输入“gnome-session &”,然后点击“Esc ”退出编辑模式,输入“:wq!”保存修改即可)

clip_image011

5.这时我们需要杀掉原桌面进程,输入命令:# vncserver -kill :1//这里的:1是桌面号

再次输入: #vncserver :1生成新的会话

clip_image012

6.下面我们开始安装gnome桌面环境

这里的安装有些慢,需要您耐心等待下。

(1)安装xwindows的基础 #sudo apt-get install x-window-system-core

clip_image013

(2)安装登录管理器:#sudo apt-get install gdm (还可以为kdm/xdm

clip_image014

(3)安装Ubuntu的桌面:#sudo apt-get install ubuntu-desktop(还可以为Kubunut-desktop/ Xubuntu-desktop

clip_image015

另外:

安装命令:apt-get install gnome-core可以安装GNOME的一些基础。apt-get install firefox/gaim/xmms可以安装 Firefox 浏览器、Gaim 聊天程序、XMMS 音乐播放器。您可以按照自己的喜好来安装。

 

7.下面我们重复步骤5, 输入命令:# vncserver -kill :1杀掉原桌面进程,

再次输入:#vncserver :1生成新的会话。然后使用vnc客户端连接,就可以看到图形化界面,如图:

clip_image016

 

注意:ubuntu10.10操作系统,安装后测试快捷键D无法正常使用,输入d时会使终端桌面显示、消失。这是因为快捷点冲突造成的(ubuntu 12.04无此问题)。

解决此问题,请按照以下步骤:

1)System->Preferences->Keyboard Shortcuts

找到系统快捷键设置菜单

clip_image017

 

2)打开快捷键设置对话框,并找到如下所示的条目,准备设置新的快捷键。\

clip_image018

 

3)  输入“Backspace”键,将这个快捷键Disable

clip_image019

 

4) 输入命令:# vncserver -kill :1杀掉原桌面进程, 再次输入:#vncserver :1生成新的会话。


5)
编辑/etc/rc.local在文件最后一行加入:
su root -c ‘/usr/bin/vncserver -name my-vnc-server -depth 16 -geometry 1280×800 :1’
即可实现开机自启动

 

the configure of vnc and some encounter problem

VNC配置及连接不上问题

环境:CentOS

Xwindowsgnome (默认安装的图形界面)

clip_image002 clip_image003

 

尽管我们可以使用SSH连接远程通过字符界面来操作Linux,但是对于更多熟悉图形人来说是很不方便的,因此开启Linux的远程桌面还是很有必要的。目前有两种比较流行的方式:XDM(X display manager)方案和VNC方案,而我个人比较倾向于VNC方案,一是因为VNC方案配置起来相对比较容易,二是VNC方案支持多种连接方式,比如通过浏览器访问Linux桌面,免去需要安装客户端的麻烦。

 

具体配置说明:

 

一, 确认及安装VNCSERVER

 

1,首先确认你服务器是否配置了VNCSERVER,可以在命令行下敲入以下命令查看:

 

[root@localhost: ~]#rpm -qa |grep vnc

 

vnc-server-4.1.2-14.el5    #返回VNCSEVER服务器端版本说明你已经安装了VNCSERVER

 

 

二,开始配置VNCSERVER

 

1,启动VNCSERVER,第一次启动VNCSERVER会提示输入密码,这里分为管理员账户及普通账户,启动方式略有所不同。

 

管理员:

 

[root@localhost /]# VNCSERVER

 

You will require a password to access your desktops.

 

Password: 123456            #输入vnc 连接密码

 

Verify: 123456                 #确认vnc密码

 

xauth: creating new authority file /root/.Xauthority

 

New ‘localhost.localdomain:1 (root)’ desktop is localhost.localdomain:1

 

Creating default startup script /root/.vnc/xstartup

Starting applications specified in /root/.vnc/xstartup

Log file is /root/.vnc/localhost.localdomain:1.log

 

 

普通用户:

 

[root@localhost /]#su leo    #leo 是用户名

[leo@localhost /]$ VNCSERVER

 

You will require a password to access your desktops.

 

Password: 123456            #输入vnc 连接密码

 

Verify: 123456                 #确认vnc密码

 

xauth: creating new authority file /home/leo/.Xauthority

 

New ‘localhost.localdomain:2 (leo)’ desktop is localhost.localdomain:2

 

Creating default startup script /home/leo/.vnc/xstartup

Starting applications specified in /home/leo/.vnc/xstartup

Log file is /home/leo/.vnc/localhost.localdomain:2.log

 

#这里要注意:每个用户都可以启动自己的VNCSERVER远程桌面,同时每个用户可以启动多个VNCSERVER远程桌面,它们用ip加端口号:ip:1ip:2ip:3 来标识、区分,使用同一端口会使另外登录的用户自动退出。另,VNCSERVER的大部分配置文件及日志文件都在用户home目录下.vnc目录下。

 

用户可以自定义启动号码如:

 

[leo@localhost /]$ VNCSERVER :2        #注意:2前面一定要有空格。

A VNC server is already running as :2

 

三,相关桌面配置,CentOS Linux支持两种图形模式:KDE模式和gnome模式。

 

1,你的RH使用的什么图形模式这个一般只有登录到图形界面查看一下才能知道,或者通过ps -A命令列出所有当前运行的程序,看看有没有KDE或者gnome字样来判断一下。

 

如果你是gnome桌面,那么你需要修改/root/.vnc/xstartup的配置文件。

 

[root@localhost .vnc]# vi 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

vncconfig -iconic &

xterm -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” &

gnome-session gnome           #添加这一句是连接时使用gnome 桌面环境

twm &

 

设置修改完毕最好是重启一次系统,否则设置不会生效。我采用的方法是杀死VNCSERVER进程再重运行VNCSERVER

 

[root@localhost .vnc]#VNCSERVER -kill :1      #这里你启动VNCSERVER时是什么端口号要对应上。

[root@localhost .vnc]#VNCSERVER :1           #重启VNCSERVER,注意:1前面一定要有空格。

 

2,设置用户信息及分辨率。

 

[root@localhost: ~]#vi /etc/sysconfig/VNCSERVERs

 

# The VNCSERVERS variable is a list of display:user pairs.

#

# Uncomment the lines below to start a VNC server on display :2

# as my ‘myusername’ (adjust this to your own). You will also

# need to set a VNC password; run ‘man vncpasswd’ to see how

# to do that.

#

# DO NOT RUN THIS SERVICE if your local area network is

# untrusted! For a secure way of using VNC, see

# <URL:http://www.uk.research.att.com/archive/vnc/sshvnc.html >.

# Use “-nolisten tcp” to prevent X connections to your VNC server via TCP.

# Use “-nohttpd” to prevent web-based VNC clients connecting.

# Use “-localhost” to prevent remote VNC clients connecting except when

# doing so through a secure tunnel. See the “-via” option in the

# `man vncviewer’ manual page.

 

VNCSERVERS=”1:root 2:leo            #此处添加用户,一般只添加一个1:root也就行了。

 

VNCSERVERARGS[1]=”-geometry 800×600 -nolisten tcp -nohttpd -localhost”

VNCSERVERARGS[2]=”-geometry 1024×768 -nolisten tcp -nohttpd -localhost”

 

#注意:上面是分别设置的rootleo两个用户的分辨率,注意是用端口号区分的。

 

另外也可以通过命令行临时修改分辨率及色深,这种方式重启后就会丢失,这里暂时用不到,命令如下:

 

[root@localhost: ~]#VNCSERVER -geometry 800×600        #设置VNCSERVER的分辨率   

 

[root@localhost: ~]#VNCSERVER -depth 16           #设置VNCSERVER的色深

 

到这里VNCSERVER服务器端就配置完成了。

 

四,客户端连接及使用。

 

1,访问方式

a、在linux下,运行vncviewer命令即可,服务器地址的写法形如192.168.1.11:1

b、在windows下,运行windows版本的vncviewer即可,用法与linux下相近。

 

以下为一些常识:

 

2,修改密码

 

运行vncpasswd即可

 

3,停止VNCSERVER

 

#VNCSERVER -kill :1

#VNCSERVER -kill :2

 

注意到VNCSERVER只能由启动它的用户来关闭,即时是root也不能关闭其它用户开启的VNCSERVER,只能用kill命令暴力杀死进程。

 

4,稳定性设置

 

VNCSERVER默认在多个客户机连接同一个VNCSERVER的显示端口时,VNCSERVER端口旧连接,而为新连接服务,可通过-dontdisconnect拒绝新连接请求而保持旧的连接。

 

5,同一个显示器可以连接多个客户机

 

#VNCSERVER -alwaysshared

 

6,重启服务

 

service VNCSERVER restart

 

7,让系统启动时自动启动VNCSERVER

 

使用VNC连接登录到CentOS Linux图形界面,点击系统”——“管理”——“服务器设置”——“服务,在后台服务中找到VNCSERVER后勾选它,点击保存即可。

 

解决连接不上问题的方法:

1、防火墙开启  不能连接

关闭防火墙    service  iptables  stop

查看防火墙状态   service iptables status

查看进程     ps axf | grep vnc/iptables