怎样在 CentOS 7.0 上安装和配置 VNC 伺服器

怎样在 CentOS 7.0 上安装和配置 VNC 伺服器,第1张

怎样在 CentOS 7.0 上安装和配置 VNC 伺服器

1. 安装 X-Window 首先我们需要安装 X-Window,在终端中执行下面的命令,安装会花费一点时间。 # yum check-update# yum groupinstall "X Window System" #yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-ce...

1. 安装 X-Window

首先我们需要安装 X-Window,在终端中执渣芦行下面的命令,安装会花费一点时间。

# yum check-update# yum groupinstall "X Window System"

#yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts

### 设定预设启动图形介面# unlink /etc/systemd/system/default.target# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

# reboot

在伺服器重启之后,我们就有了一个工作著的 CentOS 7 桌面环境了。

现在,我们要在伺服器上安装 VNC 伺服器了。

2. 安装 VNC 伺服器

现在要在我们的 CentOS 7 上安装 VNC 伺服器了。我们需要执行下面的命令。

# yum install tigervnc-server -y

3. 配置 VNC

然后,我们需要在 /etc/systemd/system/ 目录里建立一个配置档案。我们可以将 /lib/systemd/sytem/vncserver@.service 拷贝一份配置档案范例过来。

# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

接着我们用自己最喜欢的编辑器(这儿我们用的 nano )开启 /etc/systemd/system/vncserver@:1.service ,找到下面这几行,用自己的使用者名称替换掉 。举例来说,我的使用者名绝梁镇称是 linoxide 所以我用 linoxide 来替换掉 :

ExecStart=/ *** in/runuser -l <USER>-c "/usr/bin/vncserver %i"PIDFile=/home/<USER>/.vnc/%H%i.pid

替换成

ExecStart=/ *** in/runuser -l linoxide -c "/usr/bin/vncserver %i"PIDFile=/home/linoxide/.vnc/%H%i.pid

如果是 root 使用者则

ExecStart=/ *** in/runuser -l root -c "/usr/bin/vncserver %i"PIDFile=/root/.vnc/%H%i.pid

好了,下面重启 systemd 。

# systemctl daemon-reload

最并粗后还要设定一下使用者的 VNC 密码。要设定某个使用者的密码,必须要有能通过 sudo 切换到使用者的许可权,这里我用 linoxide 的许可权,执行“su linoxide”就可以了。

1.检查VNC客户端和伺服器端是否已经安装

执行如下命令:

[root@localhost ~]# rpm -qa vnc vnc-server

package vnc is not installed

package vnc-server is not installed

表示系统没有安装VNC服务端,那我们就用yum安装VNC服务端。

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

Loaded plugins: fastestmirror, refresh-packagekit

Loading mirror speeds from cached hostfile

* base: mirrors.163.

* extras: mirrors.163.

* updates: mirrors.163.

Setting up Install Process

Resolving Dependencies

-->Running transaction check

--->Package tigervnc.i686 0:1.0.90-0.10.20100115svn3945.el6 set to be updated

--->Package tigervnc-server.i686 0:1.0.90-0.10.20100115svn3945.el6 set to be updated

-->Finished Dependency Resolution

Dependencies Resolved

=================================================================================================================================================================================

Package Arch Version Repository Size

=================================================================================================================================================================================

Installing:

tigervnc i686 1.0.90-0.10.20100115svn3945.el6 base 252 k

tigervnc-server i686 1.0.90-0.10.20100115svn3945.el6 base 1.1 M

Transaction Summary

=================================================================================================================================================================================

Install 2 Package(s)

Upgrade 0 Package(s)

Total download size: 1.3 M

Installed size: 3.6 M

Downloading Packages:

(1/2): tigervnc-1.0.90-0.10.20100115svn3945.el6.i686.rpm | 252 kB 00:00

(2/2): tigervnc-server-1.0.90-0.10.20100115svn3945.el6.i686.rpm | 1.1 MB 00:00

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Total 137 kB/s | 1.3 MB 00:09

Running rpm_check_debug

Running Transaction Test

Transaction Test Sueeded

Running Transaction

Installing : tigervnc-1.0.90-0.10.20100115svn3945.el6.i686 1/2

Installing : tigervnc-server-1.0.90-0.10.20100115svn3945.el6.i686 2/2

Installed:

tigervnc.i686 0:1.0.90-0.10.20100115svn3945.el6 tigervnc-server.i686 0:1.0.90-0.10.20100115svn3945.el6

Complete!

启动VNC Server服务:使用vncserver命令(在当前使用者主目录下生成.vnc资料夹)

[root@localhost ~]# vncserver

You will require a password to aess your desks.

Password:

Verify:

xauth: creating new authority file /root/.Xauthority

New 'localhost.localdomain:1 (root)' desk 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

2. 在CentOS系统中将使用者名称加入到配置档案中

编辑vncservers的配置档案

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

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

#

# Unment 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 passwordrun 'man vncpasswd' to see how

# to do that.

#

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

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

# :kbase.redhat./faq/docs/DOC-7028

# 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"

VNCSERVERS="2:root" #使用者名称root

# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"

VNCSERVERARGS[2]="-geometry 1024x768" #尺寸大小

3.设定 root使用者的密码

使用如下命令设定密码:

[root@localhost ~]# vncpasswd

Password:abc123

Verify:abc123

当提示Verify时,再次输入密码确认。

4.启动VNC服务

使用如下命令启动VNC SERVER

[root@localhost ~]# / *** in/service vncserver start

正在启动 VNC 伺服器:2:root

New 'localhost.localdomain:2 (root)' desk is localhost.localdomain:2

Starting applications specified in /root/.vnc/xstartup

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

[确定]

[root@localhost ~]#

当显示如下资讯时,表示启动成功.

5.修改VNC SERVER的视窗治理器

vnc server预设使用的视窗治理器是n,这是一个非常简单的视窗治理器,我们可以改成常用的GNOME或者KDE。

先使用如下命令进入使用者的home目录:cd /.vnc

编辑启动项:vi xstartup

按照如下方式修改启动项:

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

#!/bin/sh

vnonfig -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 Desk" &

gnome-session &#以GNOME作为VNC的视窗治理器

#startkde #kde desk

#m &

#m # 注掉CentOS系统预设的视窗治理器

6.重启VNC SERVER

当CentOS系统提示如下资讯时,表示重启成功

[root@localhost ~]# / *** in/service vncserver restart

关闭 VNC 伺服器:2:root [确定]

正在启动 VNC 伺服器:2:root

New 'localhost.localdomain:2 (root)' desk is localhost.localdomain:2

Starting applications specified in /root/.vnc/xstartup

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

[确定]

检视VNC SERVER 监听的埠:

[root@localhost ~]# stat -antulp |grep 59

tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 3162/Xvnc

tcp 0 0 0.0.0.0:5902 0.0.0.0:* LISTEN 4193/Xvnc

tcp 0 0 0.0.0.0:59473 0.0.0.0:* LISTEN 1153/rpc.statd

tcp 0 0 :::5989 :::* LISTEN 1501/cimserver

tcp 0 0 :::5900 :::* LISTEN 3123/vino-server

tcp 0 0 ::ffff:192.168.0.124:5900 ::ffff:192.168.0.145:3072 ESTABLISHED 3123/vino-server

防火墙开放的埠:

[root@localhost ~]# / *** in/iptables -A INPUT -p tcp -m multiport

一些 VNC 伺服器的优点:

远端的图形管理方式让工作变得简单方便。

剪贴簿可以在 CentOS 伺服器主机和 VNC 客户端机器之间共享。

CentOS 伺服器上也可以安装图形工具,让管理能力变得更强大。

只要安装了 VNC 客户端,通过任何作业系统都可以管理 CentOS 伺服器了。

比 ssh 图形转发和 RDP 连线更可靠。

那么,让我们开始安装 VNC 伺服器之旅吧。我们需要按照下面的步骤一步一步来搭建一个可用的 VNC。

首先,我们需要一个可用的桌面环境(X-Window),如果没有的话要先安装一个。

注意:以下命令必须以 root 许可权执行。要切换到 root ,请在终端下执行“sudo -s”,当然不包括双引号(“”)

1. 安装 X-Window

首先我们需要安装 X-Window,在终端中执行下面的命令,安装会花费一点时间。

# yum check-update

# yum groupinstall "X Window System"

#yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts

### 设定预设启动图形介面

# unlink /etc/systemd/system/default.target

# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

# reboot

在伺服器重启之后,我们就有了一个工作著的 CentOS 7 桌面环境了。

现在,我们要在伺服器上安装 VNC 伺服器了。

2. 安装 VNC 伺服器

现在要在我们的 CentOS 7 上安装 VNC 伺服器了。我们需要执行下面的命令。

# yum install tigervnc-server -y

首先,我们需要一个可用的桌面环境(X-Window),如果没有的话要先安装一个。

注意:以下命令必须以 root 许可权执行。要切换到 root ,请在终端下执行“sudo -s”,当然不包括双引号(“”)

1. 安装 X-Window

首先我们需要安装 X-Window,在终端中执行下面的命令,安装会花费一点时间。

# yum check-update

# yum groupinstall "X Window System"

#yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts

### 设定预设启动图形介面

# unlink /etc/systemd/system/default.target

# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

# reboot

在伺服器重启之后,我们就有了一个工作著的 CentOS 7 桌面环境了。

现在,我们要在伺服器上安装 VNC 伺服器了。

2. 安装 VNC 伺服器

现在要在我们的 CentOS 7 上安装 VNC 伺服器了。我们需要执行下面的命令。

# yum install tigervnc-server -y

3. 配置 VNC

然后,我们需要在 /etc/systemd/system/ 目录里建立一个配置档案。我们可以将 /lib/systemd/sytem/vncserver@.service 拷贝一份配置档案范例过来。

# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

接着我们用自己最喜欢的编辑器(这儿我们用的 nano )开启 /etc/systemd/system/vncserver@:1.service ,找到下面这几行,用自己的使用者名称替换掉 。举例来说,我的使用者名称是 linoxide 所以我用 linoxide 来替换掉 :

ExecStart=/ *** in/runuser -l <USER>-c "/usr/bin/vncserver %i"

PIDFile=/home/<USER>/.vnc/%H%i.pid

替换成

ExecStart=/ *** in/runuser -l linoxide -c "/usr/bin/vncserver %i"

PIDFile=/home/linoxide/.vnc/%H%i.pid

如果是 root 使用者则

ExecStart=/ *** in/runuser -l root -c "/usr/bin/vncserver %i"

PIDFile=/root/.vnc/%H%i.pid

好了,下面重启 systemd 。

# systemctl daemon-reload

最后还要设定一下使用者的 VNC 密码。要设定某个使用者的密码,必须要有能通过 sudo 切换到使用者的许可权,这里我用 linoxide 的许可权,执行“su linoxide”就可以了。

# su linoxide

$ sudo vncpasswd

确保你输入的密码多于6个字元

4. 开启服务

用下面的命令(永久地)开启服务:

$ sudo systemctl enable vncserver@:1.service

启动服务。

$ sudo systemctl start vncserver@:1.service

5. 防火墙设定

我们需要配置防火墙来让 VNC 服务正常工作。

$ sudo firewall-cmd --permanent --add-service vnc-server

$ sudo systemctl restart firewalld.service

现在就可以用 IP 和埠号(LCTT 译注:例如 192.168.1.1:1 ,这里的埠不是伺服器的埠,而是视 VNC 连线数的多少从1开始排序)来连线 VNC 伺服器了。

6. 用 VNC 客户端连线伺服器

好了,现在已经完成了 VNC 伺服器的安装了。要使用 VNC 连线伺服器,我们还需要一个在本地计算机上安装的仅供连线远端计算机使用的 VNC 客户端。

你可以用像 Tightvnc viewer 和 Realvnc viewer 的客户端来连线到伺服器。

要用更多的使用者连线,需要建立配置档案和埠,请回到第3步,新增一个新的使用者和埠。你需要建立 vncserver@:2.service 并替换配置档案里的使用者名称和之后步骤里相应的档名、埠号。请确保你登入 VNC 伺服器用的是你之前配置 VNC 密码的时候使用的那个使用者名称。

VNC 服务本身使用的是5900埠。鉴于有不同的使用者使用 VNC ,每个人的连线都会获得不同的埠。配置档名里面的数字告诉 VNC 伺服器把服务执行在5900的子埠上。在我们这个例子里,第一个 VNC 服务会执行在5901(5900 + 1)埠上,之后的依次增加,执行在5900 + x 号埠上。其中 x 是指之后使用者的配置档名 vncserver@:x.service 里面的 x 。

在建立连线之前,我们需要知道伺服器的 IP 地址和埠。IP 地址是一台计算机在网路中的独特的识别号码。我的伺服器的 IP 地址是96.126.120.92,VNC 使用者埠是1。

执行下面的命令可以获得伺服器的公网 IP 地址(LCTT 译注:如果你的伺服器放在内网或使用动态地址的话,可以这样获得其公网 IP 地址)。

# curl -s checkip.dyndns.|sed -e 's/.*Current IP Address: ' -e 's/<.*$'

1.安装 yum install vnc vncserver 2. vim /etc/sysconfig/vncservers 使用vim编辑器开启配置档案,在档案中新增下面两行命令 VNCSERVERS="2:root" --指定远端使用者 2:桌面号,root:使用者 VNCSERVERARGS[2]="-geometry 1024x768" --指定远端桌面解析度 3.给你刚刚设定的远端桌面使用者 root 设定密码 vncpasswd 4.配置防火墙 vi /etc/sysconfig/iptables 使用vi编辑器开启配置档案,在档案中新增下面一行命令 -A RH-Firewall-l-INPUT -p tcp -m tcp --dport 5900:5903 -j ACCEPT vncserver在呼叫的时候,会根据你的配置来启用server端的监听埠, 埠预设是从5900开始,再加上你的桌面号。 比如你的桌面号为2,则vnc的连线埠号为5900+2=5902 比如你的桌面号为10000,则vnc的连线埠号为5900+10000=15900 重启防火墙 5. 修改指令码档案 xstartup,如果找不到此档案,执行service vncserver restart 就可以自动生成 cd ~/.vnc/ vi xstartup 使用vi编辑器开启配置档案,并进行下列修改 #xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desk" &--将它注释,加#代表注释 #m &--将它注释 gnome-session &--新增它 6.重启伺服器: service vncserver restart 远端登入: vncviewer ip:桌面号 ip和桌面号缺一不可,否则会报:unable connect to socket:(111)错误 /* 不是必须的 */ 7.远端桌面和本地桌面同步 点选系统-》首选项-》远端桌面-》勾选允许其他人检视和控制您的桌面

yum check-update

yum -y install lvm2 device-mapper

yum -y groupinstall GNOME 桌面

yum -y install tigervnc-server tigervnc

reboot

yum check-update

yum -y groupinstall GNOME 桌面

yum -y install tigervnc-server tigervnc

reboot

其他配置问题了

1.安装vnc server

2.配置VNC

将/lib/systemd/system/vncserver@.service文件复制一份

3.编辑刚复制的新文件,以下为root用户的配置

4.设置VNC密码,使信伍吵用vnc viewer登陆时需要使用的密码。

5.启动服务,开通端口

查看服务监听的端口

根据监听的端口,进行端口开放,默认为5901端口开始。

如果出现错误的话,有可能是防火墙没关,需要关闭防火墙

5.1修改默认端口,不需要可以跳过这个步骤

/usr/bin/vncserver

18:# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,

118:vncPort=5900+displayNumber

238:# n is taken if something is listening on the VNC server port (5900+n) or the

257:# (5900+n) or the X server port (6000+n).

274: if (!bind(S, pack('S n x12', AFINET,5900+n))) {

修改:118和274行的端口号就可以了.. 默认会加1 例如设置为5900,会从5901开始

6.启动服务

可能会出以下错误滑侍:

Job for vncserver@:1.service failed because the control process exited with error code. See

"systemctl status vncserver@:1.service" and "journalctl -xe" for details.

解决方案:

7.停止vncserver

数字1是起的对应橘灶的服务

7.1 暴力杀死进程

8.修改密码

安装之后重启服务器

官网地址: https://www.realvnc.com/en/connect/download/viewer/


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12546955.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存