zoukankan      html  css  js  c++  java
  • linux环境vnc部署过程详解

     

    vnc服务端机器地址:10.165.38.68

    vnc客户端机器地址:本机(windows机器)

    vnc客户端包:vnc_82537_82537.rar (百度云盘下载地址:http://pan.baidu.com/s/1pLo6MGN 密码:rhjy)

    在linux机器上安装vnc服务端,然后通过本地windows机器的vnc客户端工具去连接到服务端,这样操作linux机器就能以界面化方式操作,连接到远程linux机器后的服务器显示效果如图:

    下面就具体步骤详细讲解:

    一:确认VNC服务是否有安装

    rpm -qa|grep tigervnc

    发现显示已经安装过vnc,说明已经安装过vnc服务了

    如果显示没有安装,如下图:

    这里提供两种安装方式:

    • rpm包安装

      此法最好用在有系统安装包的基础上,如redhat-Linux.5.5.for.x86-server-5.5 系统.iso包,打开后在Server目录下有两个包

            
       上传vnc-server包就行了,然后运行命令

       rpm -ivh vnc-server-4.1.2-14.el5.3.1.i386.rpm

       来安装vnc服务,此法可以避免vnc版本与系统不一致的问题,因为是从系统里找的vnc的文件,但是iso文件难以获得,一般找这个

       rpm文件都是要通过百度来找,寻找系统版本的vnc的rpm包来安装。否则因为版本不一致会导致后续很多问题。

    • yum命令安装(推荐方式)

       此法比较简单,直接使用yum命令即可:

       yum -y install tigervnc-server

       它会自动给你下载依赖包,如果你的yum命令不能使用,建议用如下命令:

       echo nameserver 8.8.8.8 >> /etc/resolv.conf

       然后在用yum命令即可。

    二:启动vnc服务

    使用vncserver命令启动VNC服务,命令格式为"vncserver :桌面号",其中"桌面号"用"数字"的方式表示,每个用户连个需要占用1个桌面

    启动编号为1的桌面示例如下:

    命令为 vncserver :1 (注意vncserver与:之间有空格)

    以上命令执行的过程中,因为是第一次执行,需要输入密码,这个密码被加密保存在用户主目录下的.vnc子目录(/root/.vnc/passwd)中;同时在用户主目录下的.vnc子目录中为用户自动建立xstartup配置文件(/root/.vnc/xstartup),在每次启动VND服务时,都会读取该文件中的配置信息。另外需注意的是这里设置的密码就是后面我们用vncserver客户端工具连接时要输入的密码。

    BTW:/root/.vnc/目录下还有一个“主机名:1.pid”文件,这个文件记录着启动VNC后对应后面操作系统的进程号,用于停止VNC服务时准确定位进程号。

    这样vnc服务端就启动成功了,这里是用root用户执行的vncserver :1命令,则启动后用vncserver客户端连接进入到该服务器的用户就是root用户,

    如果用root用户安装后,用aiuap用户(其他的用户)启动:则vncserver客户端连接进入到该服务器的用户就是aiuap用户

    三:vnc服务使用的端口号与桌面号的关系

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

    四:配置VNC图形桌面环境为KDE或GNOME桌面环境

    如果您是按照我的上面方法进行的配置的,登陆到桌面后效果是非常简单的,只有一个Shell可供使用,这是为什么呢?怎么才能看到可爱并且美丽的KDE或GNOME桌面环境呢?
    之所以那么的难看,是因为VNC服务默认使用的是twm图形桌面环境的,可以在VNC的配置文件xstartup中对其进行修改,先看一下这个配置文件:

    [root@xxxx-145 ~]#  vi /root/.vnc/xstartup

    可以看到最后一行为:twm &

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

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

    如果连接vnc后发现为黑屏,原因是没有安装GNOME Desktop Environment,使用

    yum -y groupinstall "GNOME Desktop Environment"

    即可安装GNOME Desktop Environment,安装完成后可重启vnc服务即执行vncserver -kill :1,在执行vncserver :1,再次进入发现出现屏幕画面。

    如果发现执行该命令报错如下:

    可执行如下命令安装:

    yum clean all

    yum groupinstall "X Window System" "Desktop"

    yum -y install gnome*​

    即可安装GNOME Desktop Environment,安装完成后可重启vnc服务即执行vncserver -kill :1,在执行vncserver :1,再次进入发现出现屏幕画面。

    五:配置多个桌面

    可以使用如下的方法启动多个桌面的VNC:

    vncserver :1
    vncserver :2
    vncserver :3

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

    执行vi /etc/sysconfig/vncservers命令,添加配置:可根据你自己的用户具体配置,这里我配置了root和aiuap用户

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

    六:vnc服务管理

    a:修改vnc访问密码

    使用命令vncpasswd对不同用户的VNC的密码进行修改,一定要注意,如果配置了不同用户的VNC需要分别到各自用户中进行修改,如我用root用户执行了vncpasswd命令,则只会修改root用户的vnc密码,其他用户不受影响:

    b:启动vnc服务

    基于第五步的基础,已经在配置文件中配置好用户对应的桌面号,执行service vncserver start命令,即可启动所有的用户对应的vnc服务

    c:停止vnc服务

    同样也是基于第五的基础,执行service vncserver stop命令,即可关闭配置文件中所有用户对应的vnc服务

    七:客户端连接安装启动好的vnc服务端

    下载文章开头给出的vnc_82537_82537.rar包到自己的本地机器,双击vncviewer.exe启动程序

    服务器输入vnc服务端安装所在机器地址,后面的数字序号与vncserver启动时vncserver :1后面跟着的桌面号相同(如果配置了第五步和VNCSERVERS="1:root 2:aiuap"中桌面号相同即可),我这里如果写1则为root用户连接进入10.165.38.68,如果为2则为aiuap用户连接进入10.165.38.68服务器

    点击确定后,会让你输入密码,该处的密码与第二步中启动vncserver输入的密码一致即可

    点击确定,就能进入文章开头说的那种界面了,可以看到右上角显示进入该服务器的用户名用1进入为root,用2进入为aiuap

    到此为止linux下安装vnc服务端以及从客户端连接vnc服务端所有的知识点就讲完了,自我感觉内容很细,这是我平时工作经常会安装这个然后网上也参考了很多人写的,总结出的自己安装试验很多次都很好用的一套。

  • 相关阅读:
    Linux系统挂载数据盘
    python 路径和文件的遍历
    Markdown 语法手册
    Markdown 语法手册
    Markdown语法说明
    Alpha通道
    图像质量评价之数据库
    Python报错:ImportError: No module named src.data_layer
    history命令
    关于Segmentation fault (core dumped)
  • 原文地址:https://www.cnblogs.com/lcword/p/12683393.html
Copyright © 2011-2022 走看看