`
JerryLead
  • 浏览: 77052 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

CentOS 6.0 下 VNC 配置方法(转载)

 
阅读更多

 

转载自http://www.laozhe.net/articles/301.html

CentOS 6.0 下 VNC 配置方法

2011年09月2日   系统专区   没有评论   1,255人围观过  

  最近找了一台 IBM 的老服务器折腾了一下,学习了一下 Linux 技术。这台服务器很老了,在安装 CentOS 时候,经过已经信息查询,内存竟然还有 8G,如此老的服务器还有这么高的配置,当年得买多少钱啊。该服务器配置为 4 颗志强 3.0G CPU,都为单核,内存为 8G,不过貌似是 DDR266 的,汗。服务器上硬盘为两块 10k 转 146G SCIS,做了个 RAID 1,还有个存储,上面还有 4 块这样的硬盘,先用服务器上这两块吧,不够了再说。

  给服务器上了电,做了根网线从机架上布了一下线,接到外网交换机上,开机研究。

  先是安装了 CentOS 6.0 的 64 位版,既然都是 8G 内存了,不跑 64 位浪费了。可是后来启动时候提示:

kernel requires an x86_64 cpu, but only detected an i686 cpu unable to boot – please use a kernel appropriate for your cpu

  汗了,CPU 不支持 64 位的啊,啥时候的配置啊,用 CPU-Z 查看,支持的指令集只有 “MMX,SSE(1,2)”,够老了。无奈,只有重新下载了 CentOS 6.0 for i386 版本,即 32 位版本。

  再次安装,又提示:

Marking TSC unstable due to check_tsc_sync_source failed

  崩溃了,估计是内核比较新,这个机器硬件不支持了。没法,值得找了个比 6.0 更老的 5.6 版本,安装就一切正常了。

  但是呢,由于对 Linux 极其不熟悉,故只能硬着头皮安装了 Windows server 2003 版本,在这个环境下安装 vmware,再在里面安装 32 位的 CentOS 6.0,这样就能够很好的学习、管理、研究。

  绕了半天,终于扯到正题了,安装了 CentOS 6.0 后,发现远程管理的方式只有 SSH 方式。于是想像 Windows 一样有个远程桌面,搜索了半天,发现有几个软件可以实现,但是貌似 VNC 口碑比较好,于是就拿这个软件来研究了。

  进入终端管理(Terminal),开始一步步的安装操作。PS:实际上,每次进入 Linux,即使是处在了桌面环境,但是只要进行一些安装操作,都得到终端下输入指令,极少情况是使用图形化界面的,故本人觉得远程桌面对于 Linux 来说意义不大,用 SSH 方式操作跟在终端下是一样的,所以用这个 VNC 再到 Linux 环境下再启动终端来执行指令,真有点放屁脱裤子,呵呵。

  当然这里讲解的是一种方法。VNC 配置网上搜了有很多,但是貌似写的都不够基础,这里仔细按步骤记录一下。

一、安装 VNC

  首先检查一下本机是否安装了 VNC,默认情况下,CentOS 6.0 是没有安装的。

  检查是否安装,输入:

1
[root@localhost ~]# rpm -q vnc vnc-server

  得到:

1
2
package vnc is not installed
package vnc-server is not installed

  提示没有安装,那么就开始安装,输入:

1
[root@localhost ~]# yum install vnc vnc-server

  注:如果是 Ubuntu 则输入:

1
[root@localhost ~]# apt-get install vnc vnc-server

  在一串指令提示后,会让你确认一些选项,输入两次 “Y” 并确认,稍作等待,提示 “Complete!” 即完成安装。

二、设置 VNC 密码

  启动 VNC,输入:

1
[root@localhost ~]# vncserver

  此时会提示你输入密码,因为是第一次配置。重复输入两次即可。

三、配置桌面类型

  设置一下远程桌面使用那个类型的桌面,分辨率多少等等。输入:

1
[root@localhost ~]# vi ~/.vnc/xstartup

  得到:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/sh
 
vncconfig -iconic &
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
OS=`uname -s`
if [ $OS = 'Linux' ]; then
  case "$WINDOWMANAGER" in
    *gnome*)
      if [ -e /etc/SuSE-release ]; then
        PATH=$PATH:/opt/gnome/bin
        export PATH
      fi
      ;;
  esac
fi
if [ -x /etc/X11/xinit/xinitrc ]; then
  exec /etc/X11/xinit/xinitrc
fi
if [ -f /etc/X11/xinit/xinitrc ]; then
  exec sh /etc/X11/xinit/xinitrc
fi
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &

  一般情况下,我们使用的 Linux 桌面都是 “Gnome” 桌面,故配置成这个桌面比较习惯。

  按 “i” 键进入编辑状态,主要修改最后两行。改为:

1
2
3
4
# xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
# twm &
 
gnome-session &

  一看便知,将配置文件的最后两行注释掉,并且加入了一行代码,表明使用的是 “Gnome” 桌面。

  输入完毕,按 “ESC” 键退出编辑状态,再输入:

1
:wq

  “w” 表示写,即保存配置,“q” 表示退出。

四、配置登录帐号、桌面分辨率、连接方式

  输入:

1
[root@localhost ~]# vi /etc/sysconfig/vncservers

  出现如下提示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 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 this URL:
 
# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.
 
# 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="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"

  重点编辑最后两行,将这两行注释去掉,得到:

1
2
VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 1024x768"

  这里是只有一个帐号登录,设置分辨率为1024*768,如果你有多个帐号,则按照下面格式配置。

1
2
3
4
VNCSERVERS="1:user1 2:user2 3:user3"
VNCSERVERARGS[1]="-geometry 1024×768"
VNCSERVERARGS[2]="-geometry 1024×768"
VNCSERVERARGS[3]="-geometry 800×600 -depth 24 -nolisten tcp -nohttpd -localhost"

  解释一下这个文件:

VNCSERVERS 这一行是配置在系统启动时启动几个 VNC server,上面的例子里运行了三个 VNC server,其中 user1 在 display :1,user2 在 display :2,user3 在 display :3。
VNCSERVERARGS 这三行,分别为 VNC server 1, 2, 3 配置启动参数,上面的例子里对 user1 和 user2 使用屏幕分辨率 1024×768,

对 user3 使用 800×600,24 色,不支持 tcp,不支持 http 连接,只能在本地测试访问。

  注释:在启动 VNCserver 时,你也可以为 server 指定一个 display 参数。你可以把 display 理解为一个桌面,每个用户都可以有自己的桌面。VNC 客户端在连接时,可以指定连接到哪个桌面上。在系统中,display 号不能重复,也就是说,如果有用户已经建立了名为 “:1” 的 display,另外一个用户就不能再使用 “:1” 了,他可以使用 “:2”。

  指定 display 号码的启动 VNC server 的命令是:

1
vncserver:1

五、配置防火墙,允许 VNC 连接

  VNC server 监听的端口从 5900 开始,display:1 的监听 5901,display:2 监听 5902,以此类推。CentOS 的防火墙缺省是不允许连接这些端口的,所以需要使用下面的步骤打开防火墙(需要 root 权限):

  输入编辑:

1
[root@localhost ~]# vi /etc/sysconfig/iptables

  得到:

1
2
3
4
5
6
7
8
9
10
11
12
13
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

  上面我们只添加了一个 root 帐号和桌面 1,所以这里按照上面的规则,添加一个 “5901” 端口号即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

  即添加了上述代码的第 11 行。

六、重启防火墙

  配置就算完毕了,需要重启一下防火墙才能使最后那个端口号的配置正常。

1
2
3
4
5
[root@localhost ~]# /sbin/service iptables restart
iptables:清除防火墙规则:[确定]
iptables:将链设置为政策 ACCEPT:filter [确定]
iptables:正在卸载模块:[确定]
iptables:应用防火墙规则:[确定]

  现在重启防火墙完毕后,你就可以使用 VNC 客户端连接了,连接时候必须注意主机 IP 地址后面必须加桌面号,例如这样连接:

192.168.1.2:1

  跟输入端口号是一样的,但是这里是桌面号,记住。

七、设置 VNC 自动启动

  虽然上面配置是可以使用了,但是你一旦重启服务器后,VNC 的服务又会停止,得手动来启,不方便,虽说服务器不能老是启动,但是重启的时候还是有的,为了方便,你需要将 VNC 服务设置为自动自动。

  方法很多,你可以在图形化的界面下打开服务窗口,然后将 VNC 服务设为自动。既然这里都是在用终端下的命令行形式,就继续沿用这个方式吧。

1
[root@localhost ~]# chkconfig vncserver on

  好了,所有配置完毕,各位可以享用 VNC 带来的远程控制功能了。

 

更为简洁的方法:来自

http://www.casparant.com/posts/it-is-very-easy-to-configure-vncserver-in-centos.html

 

原来在CentOS中配置VNCServer很容易

2009年3月4日 | 分类: Configuration | 标签: centosvncvncserver

欢迎光临Caspar Ant,如果您喜欢本站的内容,欢迎订阅我的RSS;如果您需要出于非商业性质的转载,请先阅读版权声明页面。

发现该学点脚本了,有空可以在服务器上折腾折腾。不过在此之前我还是先得把实验室这台服务器配置好。

 

服务器是CentOS5.2,准备开启VNC服务。想起当年在Ubuntu下配置费了九牛二虎之力,估计着在CentOS上也不会容易。

没想到如此简单:

服务器在安装时已经装好了VNCServer,接下去只要编辑/etc/sysconfig/vncservers文件中的VNCSERVERS字段(确保取消了这行的注释):

VNCSERVERS="1:root 2:user1 3:user2 4:blablabla"

如果只要为单个用户开启VNC服务,只需按照PORT:USERNAME的格式修改,如果为多个用户开启VNC服务,则用空格隔开即可。

如果需要修改分辨率,设置是否允许通过TCP登录、是否允许通过Web登录以及是否允许不安全TCP tunel登录,则修改VNCSERVERARGS[2]字段:


VNCSERVERARGS[2]="-geometry 1024x768 -nolisten tcp -nohttpd -localhost"

 

注意按照注释提示,酌情修改。

如果系统开启了防火墙,还要把5901~590x端口(取决于你为多少个用户开启VNC服务,如果VNC第一个端口开放,则为5901,以此类推)打开,至于是开启TCP端口还是UDP端口,按照自己的设置来修改。

修改完毕后,把vncserver加入开机自动启动:

chkconfig vncserver on

或者手动往rc2~5.d/中加入vncserver的链接。

同时仍然要注意使用vncpasswd修改密码,并且修改~/.vnc/xstartup,注释最后两行,添加一行gnome-session &

# xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
# twm &
gnome-session &

从此每个用户都顺利过上了vnc登录生活…

 

 

 

自己的实践(如何在Windows 7和Ubuntu上使用VNC远程连接CentOS)

Win7

下载UltraVNC(Real VNC有点问题,我没有试验成功)

打开UltraVNC,设置VNC Server为“133.133.10.50:1”,其中133.133.10.50是CentOS的ip,1代表在VNCSERVERS="1:root 2:user1 3:user2 4:blablabla"里设置的root

然后connect就行了

 

Ubuntu

打开Remote Desktop Viewer

点Connect,然后选择Protocol为VNC,设置Host为133.133.10.50:1

点连接,然后输入密码即可

 

 

 

分享到:
评论

相关推荐

    CentOS 6.0 VNC远程桌面配置

    CentOS 6.0 VNC远程桌面配置 本文将指导读者如何在 CentOS 6.0 系统中配置 VNC 远程桌面,以便用户可以通过 VNC 客户端远程连接到 Linux 系统的图形界面。 一、VNC 服务器安装和配置 1. 检查 Linux 系统是否安装 ...

    centos6.0配置本地yum

    默认情况下,CentOS 6.0 使用的 YUM 配置文件位于 `/etc/yum.repos.d/` 目录下。此目录包含了多个 `.repo` 文件,如 `CentOS-Base.repo` 和 `CentOS-Media.repo`,它们分别定义了不同的 YUM 源配置。 - **`CentOS-...

    centos6.0安装

    CentOS 6.0 安装教程 CentOS 6.0 是目前 CentOS 家族最新版的服务器系统,本教程将带您一步步完成 CentOS 6.0 的安装过程。 一、前提条件 * 一张 Linux CentOS 6.0 光盘或者 ISO 镜像文件 二、安装步骤 1.1、...

    CentOs6.0下安装Oracle11g

    很多做服务器的程序员都因为在linux下安装linux而头痛不已,确实是很麻烦的一件事,此文档讲解了在CentOs6.0下安装Oracle11g的详细步骤,希望能帮到大家。

    CentOS 6.0下vncserver安装配置

    CentOS 6.0 下 vncserver 安装配置 Centos 6.0 下 vncserver 安装配置是一种远程桌面连接解决方案。通过安装和配置 vncserver,可以实现在服务器上远程桌面连接,提高工作效率和灵活性。 一、安装必要的软件包 ...

    Centos6.0安装lamp

    至此,我们已经完成了在Centos 6.0上安装LAMP环境及配置 PhpMyAdmin 的过程。通过这些步骤,你可以轻松搭建一个功能完备的Web开发环境。 **参考资料**:[http://down.chinaz.com/server/201109/1064_1.htm]...

    CentOS-6.0-x86_64-bin-DVD.torrent

    centos6.0种子文件 操作系统下载

    CentOS 6.0安裝gcc

    ### CentOS 6.0 安装GCC 在Linux系统中,GCC(GNU Compiler Collection)是一个重要的编译器套件,支持多种编程语言如C、C++等。对于开发者来说,安装...希望本文能够帮助到需要在CentOS 6.0上安装和配置GCC的读者。

    CentOS6.0安装Oracle10g详细文档

    本文档详细介绍了如何在CentOS6.0操作系统上安装Oracle10g,这是一个非常实用的技术教程,尤其适合那些希望在最新版本的Linux发行版上部署旧版本Oracle数据库的用户。 首先,让我们深入了解CentOS6.0。这是一个基于...

    VMware10安装CentOS-6.0.docx

    总结,VMware 10安装CentOS 6.0的过程涉及到虚拟机的创建、配置、ISO映像加载以及操作系统安装等步骤。这个过程有助于理解虚拟化技术和Linux系统的运行机制,同时也是一个实用的技能,无论是在学习还是工作中都非常...

    CentOS6.0安装Oracle

    - **Putty**:这是一个远程命令行工具,对于CentOS 6.0的配置尤为重要。通过设置服务器IP地址和端口号(默认为22,SSH协议),可轻松实现远程连接。特别注意,在Translation选项中选择UTF-8编码格式,以避免字符显示...

    CentOS 6.0安装图解教程

    **CentOS 6.0 安装步骤详解** 在安装 CentOS 6.0 时,首先需要通过光盘或U盘成功引导系统。引导过程的关键在于如何选择合适的启动模式。当系统加载时,按下键盘上的 ESC 键,会出现 `boot:` 提示符,此时输入 `...

    XP下硬盘安装CentOS 6.0

    ### XP下硬盘安装CentOS 6.0 的详细步骤与要点 #### 一、背景介绍 在不具备光驱、U盘、移动硬盘等外部存储设备的情况下,并且主板不支持U盘启动时,如何在Windows XP操作系统下安装CentOS 6.0?本文将详细介绍这一...

    iredmail安装Centos6.0下安装说明

    iredmail安装Centos6.0下安装说明

    linux CentOS 6.0下安装 Oracle10g

    linux CentOS 6.0下安装 Oracle10g,有详细的说明,有配置自动启动服务说明。

    CentOS 6.0安装指南

    ### CentOS 6.0 安装与配置指南 #### 一、引言 CentOS 6.0 是一款基于 Red Hat Enterprise Linux (RHEL) 的开源操作系统,它提供了企业级的功能和服务,同时又免费可用。本文档旨在为用户提供一套完整的 CentOS ...

    U盘安装CentOS 6.0

    U盘安装CentOS 6.0 实现目的:用U盘安装CentOS 6.0到服务器 工具软件: 1、U盘一只,我这里用到的是“朗科(Netac)USB3.0高速优盘 U903 16G” 2、CentOS 6.0系统镜像,我这里下载的是32位的系统CentOS-6.0-i386-...

    centos7系统VNC多用户配置.txt

    解决添加非root用户,VNC不能正常启动。本人实测操作文档,我采用centos7.2

Global site tag (gtag.js) - Google Analytics