007 Linux下VNC的安装与配置(redhat 6.9)

1.确认VNC是否安装
# rpm -qa | grep -i vnc
否则安装VNC
# yum install tigervnc-server -y


2.启动VNC服务
使用vncserver命令启动VNC服务,命令格式为“vncserver :桌面号”,其中“桌面号”用“数字”的方式表示,每个用户连个需要占用1个桌面
启动编号为1的桌面示例如下
# vncserver :1


You will require a password to access your desktops.


Password:
Verify:
xauth:  creating new authority file /root/.Xauthority


New 'testdb:1 (root)' desktop is testdb:1


Creating default startup script. /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/testdb:1.log


以上命令执行的过程中,因为是第一次执行,需要输入密码,这个密码被加密保存在用户主目录下的.vnc子目录(/root/.vnc/passwd)中;
同时在用户主目录下的.vnc子目录中为用户自动建立xstartup配置文件(/root/.vnc/xstartup),在每次启动VND服务时,都会读取该文件中的配置信息。
BTW:/root/.vnc/目录下还有一个“主机名:1.pid”文件,这个文件记录着启动VNC后对应后天操作系统的进程号,用于停止VNC服务时准确定位进程号。


3.VNC服务使用的端口号与桌面号的关系
VNC服务使用的端口号与桌面号相关,VNC使用TCP端口从5900开始,对应关系如下
桌面号为“1”  ---- 端口号为5901
桌面号为“2”  ---- 端口号为5902
桌面号为“3”  ---- 端口号为5903
……
基于Java的VNC客户程序Web服务TCP端口从5800开始,也是与桌面号相关,对应关系如下
桌面号为“1”  ---- 端口号为5801
桌面号为“2”  ---- 端口号为5802
桌面号为“3”  ---- 端口号为5803
……
基于上面的介绍,如果Linux开启了防火墙功能,就需要手工开启相应的端口,以开启桌面号为“1”相应的端口为例,命令如下
# iptables -I INPUT -p tcp --dport 5901 -j ACCEPT
# iptables -I INPUT -p tcp --dport 5801 -j ACCEPT


4.测试VNC服务
第一种方法是使用VNC Viewer软件登陆测试,操作流程如下
启动VNC Viewer软件 --> Server输入“192.168.10.240:1或者192.168.10.240:5901” --> 点击“OK” --> 
Password输入登陆密码 --> 点击“OK”登陆到X-Window图形桌面环境 --> 测试成功


第二种方法是使用Web浏览器(如Firefox,IE,Safari)登陆测试,操作流程如下
地址栏输入http://192.168.10.240:5801/ --> 出现VNC viewer for Java(此工具是使用Java编写的VNC客户端程序)界面,同时跳出VNC viewer对话框,
在Server处输入“192.168.10.240:1”点击“OK” --> Password输入登陆密码 --> 点击“OK”登陆到X-Window图形桌面环境 --> 测试成功
(注:VNC viewer for Java需要JRE支持,如果页面无法显示,表示没有安装JRE,可以到http://java.sun.com/javase/downloads/index_jdk5.jsp这里下载最新的JRE进行安装)


5.配置VNC图形桌面环境为KDE或GNOME桌面环境
如果您是按照我的上面方法进行的配置的,登陆到桌面后效果是非常简单的,只有一个Shell可供使用,这是为什么呢?怎么才能看到可爱并且美丽的KDE或GNOME桌面环境呢?
回答如下,之所以那么的难看,是因为VNC服务默认使用的是twm图形桌面环境的,可以在VNC的配置文件xstartup中对其进行修改,先看一下这个配置文件
# vi /root/.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
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &


将这个xstartup文件的最后一行修改为“startkde &”,再重新启动vncserver服务后就可以登陆到KDE桌面环境
将这个xstartup文件的最后一行修改为“gnome-session &”,再重新启动vncserver服务后就可以登陆到GNOME桌面环境


重新启动vncserver服务的方法:
# vncserver -kill :1
# vncserver :1


6.配置多个桌面
可以使用如下的方法启动多个桌面的VNC
# vncserver :1
# vncserver :2
# vncserver :3
……
但是这种手工启动的方法在服务器重新启动之后将失效,因此,下面介绍如何让系统自动管理多个桌面的VNC,
方法是将需要自动管理的信息添加到/etc/sysconfig/vncservers配置文件中,先以桌面1为root用户桌面2为oracle用户为例进行配置如下:
格式为:VNCSERVERS="桌面号:使用的用户名 桌面号:使用的用户名"
# vi /etc/sysconfig/vncservers
VNCSERVERS="1:root 2:oracle"
VNCSERVERARGS[1]="-geometry 1024x768"
VNCSERVERARGS[2]="-geometry 1024x768"


7.修改VNC访问的密码
使用命令vncpasswd对不同用户的VNC的密码进行修改,一定要注意,如果配置了不同用户的VNC需要分别到各自用户中进行修改,
例如在我的这个实验中,root用户和oracle用户需要分别修改,修改过程如下:
# vncpasswd
Password:
Verify:
#


8.启动和停止VNC服务
1)启动VNC服务命令
# service vncserver start


2)停止VNC服务命令
# service vncserver stop


3)重新启动VNC服务命令
service vncserver restart


4)设置VNC服务随系统启动自动加载
第一种方法:使用“ntsysv”命令启动图形化服务配置程序,在vncserver服务前加上星号,点击确定,配置完成。
第二种方法:使用“chkconfig”在命令行模式下进行操作,命令使用如下(预知chkconfig详细使用方法请自助式man一下)
# chkconfig vncserver on
# chkconfig --list vncserver
vncserver       0:off   1:off   2:on    3:on    4:on    5:on    6:off






常见问题:


问题1:
WARNING: The first attempt to start Xvnc failed, possibly because the font
catalog is not properly configured.  Attempting to determine an appropriate
font path for this system and restart Xvnc using that font path ...
Could not start Xvnc.


/usr/bin/Xvnc: symbol lookup error: /usr/bin/Xvnc: undefined symbol: 
pixman_composite_trapezoids
/usr/bin/Xvnc: symbol lookup error: /usr/bin/Xvnc: undefined symbol: 
pixman_composite_trapezoids


如果出现FAILED那一般是配置文件写错了,如果检查后问题依旧,并且错误提示与上图类似那么则是版本原因。
安装或更新x11,命令:
yum install pixman pixman-devel libXfont -y




问题2:
打开vncserver连接时,会发现是灰屏,上面显示三个复选框:
Accept clipboard from viewers; 
Send clipboard to viewers; 
Sendprimary selection to viewers.
并未显示Gnome的桌面。


检查图形界面,desktop
# rpm -qa | grep -i desktop
如果没有显示,表示你没有安装,这时,需要安装desktop
安装desktop
# yum groupinstall -y "Desktop"  "X Window System" "Chinese-support"
# vncserver -kill :1
# vncserver :1
我这里采用的是gnome,所以安装上面的包就可以了。安装内容的过程就省略了。使用yum安装,系统可以自动确认需要安装的依赖包,相当方便。
说明:
--如果你装的是kde,那么你就安装kde的包,如下:
# yum groupinstall  -y "KDE Desktop" "X window System" "Chinese-support"
# vncserver -kill :1
# vncserver :1
--当然,你也可以直接写成如下方式进行安装
gnome: 
# yum install -y xdm gdm
kde:
# yum install -y kdm xdm

猜你喜欢

转载自blog.csdn.net/guoyanliang1985/article/details/80090901
007