linux 上 配置vncserver

linux 上 配置vncserver,第1张

 vncserver是使用非常方便和广泛的远程桌面服务,配置也相对简单。

下面记录了在centos系统上进行配置vncserver的过程。

安装

查看centos下是否已经安装了vncserver

rpm -qa |grep vnc

如果未安装vncserver,则进行安装

yum install vnc vncserver

vncserver配置

   vnc桌面的启动方式有两种,一种是通过在 /etc/sysconfig/vncservers文件中配置启动,这种方式配置的vnc桌面在服务器启动的时候就被启动,可以直接远程连接;另一种是在机器运行的时候运行vncserver

:桌面号 命令来启动,这种方式启动的vnc桌面在机器重启后失效。

1. 使用文件来进行配置

    这种方式只能在root用户下执行。

   /etc/sysconfig/vncservers的配置:

1

2

3

4

5

# VNCSERVERS="2:myusername"

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

VNCSERVERS="1:root 2:jason"

VNCSERVERARGS[1]="-geometry 1600x1000-nolisten tcp -localhost"

VNCSERVERARGS[2]="-geometry 1600x1000-nolisten tcp -localhost"

其中指定了 桌面号:用户名,以及相应的配置信息。

2. 使用vncserver命令来配置

    这种方式可以在所有用户下进行,每个用户都可以开启多个vnc远程桌面,一个用户的所有vnc桌面都使用相同的密码,但是所有用户的桌面号必须唯一。

1

2

3

4

5

6

7

8

9

usage: vncserver [:] [-name] [-depth ]

[-geometry x]

[-pixelformat rgbNNN|bgrNNN]

[-fp ]

[-fg]

[-autokill]

...

vncserver -kill

vncserver -list

可以通过vncserver命令新建桌面

vncserver :number 桌面号, -name 桌面名(显示在vncviewer上), -depth 色深, -geometry 桌面大小。

或者删除一个远程桌面

vncserver -kill :桌面号

vnc桌面配置

    每个用户的~/.vnc目录下都有一个 xstartup配置文件,来配置vnc使用的是 gnome桌面还是kde桌面,还有其他的一些信息。

如果你是gnome桌面,那么你需要修改/root/.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

27

28

29

#!/bin/sh

[ -r /etc/sysconfig/i18n ] &&./etc/sysconfig/i18n

export LANG

export SYSFONT

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

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

twm &

vncserver的服务端运行

   vncserver运行:

service vncserver start

    在运行的时候,每个用户都可以通过vncserer命令开多个vnc远程桌面(通过全局的桌面号来进行区分),且一个用户的所有vnc桌面的密码都相同(通过vncpasswd设置)。

    每当用户新开一个vnc桌面时,在用户的 ~/.vnc 目录下就会有一个对应的 服务器机器名:桌面号.pid 的进程文件和服务器机器名:桌面号.log 的日志文件。

vnc客户端的连接

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

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

在centos7 下安装配置vncserver

一.安装

以root用户运行以下命令来安装vncserver

yum install tigervnc-server

同样运行以下命令来安装vncviewer

yum install vnc

停止并禁用防火墙

systemctl stop firewalld.service

systemctl disable firewalld.service

二.配置

vncviewer基本上不用配置;

vncserver的配置,创建一个新的配置文件,以开启1号窗口为例(也可以同时开启多个窗口,修改数字即可),方法如下:

cp /lib/systemd/system/[email protected]/etc/systemd/system/vncserver@:1.service

或者再增加一个窗口:

cp /lib/systemd/system/[email protected]/etc/systemd/system/vncserver@:2.service

编辑/lib/systemd/system/vncserver@:1.service,设置用户root相关参数,最终内容如下:

[Unit]

Description=Remote desktop service (VNC)

After=syslog.target network.target

[Service]

Type=forking

# Clean any existing files in/tmp/.X11-unix environment

ExecStartPre=/bin/sh -c '/usr/bin/vncserver-kill %i >/dev/null 2>&1 || :'

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

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

ExecStop=/bin/sh -c '/usr/bin/vncserver-kill %i >/dev/null 2>&1 || :'

上述内容中最好设置为root用户,否则可能会看到以下报错:

vncserver@:1.service - Remote desktopservice (VNC)

  Loaded: loaded (/usr/lib/systemd/system/vncserver@:1.serviceenabled)

  Active: failed (Result: exit-code) since Tue 2015-04-14 10:09:24 CST1min 36s ago

 Process: 3258 ExecStart=/sbin/runuser -l sysadmin -c /usr/bin/vncserver%i (code=exited, status=1/FAILURE)

 Process: 3254 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i >/dev/null 2>&1 || : (code=exited, status=0/SUCCESS)

Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]:Starting Remote desktop service (VNC)...

Apr 14 10:09:24 F1A-VMHOST-SWPErunuser[3258]: Password:

Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]:vncserver@:1.service: control process exited, code=exited status=1

Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]:Failed to start Remote desktop service (VNC).

Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]:Unit vncserver@:1.service entered failed state.

Warning: Unit file changed on disk,'systemctl daemon-reload' recommended.

三.应用

更新systemctl以使其生效;

systemctl daemon-reload

设置vncserver的密码;

 vncpasswd root

按提示输入密码以及确认密码

启动该服务用来启用vnc的1号窗口;

systemctl start vncserver@:1.service  或者vncserver :1

关闭1号窗口:

systemctl stop vncserver@:1.service   或者vncserver -kill:1

设置为开机自动启动;

systemctl enable vncserver@:1.service

End.                                                         

转自 嘉为教育-rhce认证_rhce培训_linux培训_linux认证_linux考证

linux无界面vnc显卡无显示原因如下:

1、vncviewer是完全免费的,软件安装界面直接安装安装完毕后运行VNCViewer,在地址栏输入ip地址造成这个现象的原因是,当使用Intel集成显卡的时候,没有显示器接入,显卡默认是没有输出的,解决方法为配置一块虚拟显卡,强制集成显卡输出到虚拟显卡,这部分功能在Linux系统下通过xserverxorgvideodummy实现。

2、Linux服务器是不接显示器,用ssh等文字界面连接管理,有些软件需要GUI管理,不接显示器xwindows是默认无法启动的,导致vncserver连接失败VNC基本上是属于一种显示系统,能将完整的窗口界面通过网络,传输到另一台计算机的屏幕上vnc包括客户端和服务器端,VNC远程Linux可以使用图形界面首先用Linux安装VNC然后zhi进行配置。

3、配置完成后用IIS7服务器管dao理软件打开VNC选项,添加刚才配置VNC的信息,这样就可以完成VNC远程连接Linux了,IIS7服务器管理工具可以批量管理、定时上传下载、同步 *** 作、数据备份、到期提醒、自动更新,IIS7服务器管理工具适用于Windows *** 作系统和liunx *** 作系统,支持Vnc客户端和Ftp客户端批量 *** 作。

linux开机自动启动vncserver服务,需要先保证VNC安装无问题以及各种配置以及防火墙正常,下面是vncserver服务安装、配置以及设置自启动的步骤:

首先需要检查一下服务器是否已经安装了VNC服务,检查服务器的是否安装VNC的命令如下:

rpm -qa | grep vnc

使用了上面的命令我这边返回的信息是下面的(如果没有任何显示,则说明系统没有安装vnc包)

tigervnc-1.1.0-5.el6.i686

tigervnc-server-1.1.0-5.el6.i686

如果没有安装vnc可以使用下面命令进行安装:

yum install tigervnc tigervnc-server

接下来就是安装之后的配置问题了。

使用下面的命令编辑配置文件:

vi /etc/sysconfig/vncservers

使用上面命令的时候,可能您服务器上面已经存在这个配置文件,也可能您服务器上面不存在这个配置文件,将下面的内容添加到配置文件内:

VNCSERVERS="1:root"

VNCSERVERARGS[1]="-geometry 800x600"

下面这段是上面所讲配置文件注解,做参考之用:

#这个是配置远程桌面登录的用户名,如果两个用户,则使用VNCSERVERS="1:user1 2:user2" ,,

依次类推,默认情况下,1:user1对应5901,2:user2对应5902(VNC的默认监听端口是5900,监听端口规则为590+usernumber),如下

VNCSERVERS="usernumber:myusername"

#下面这项配置为登录桌面配置,其中的“1”为用户序号,800x600为分辨率,-nolisten tcp为阻止tcp包,-localhost代表只监听本地,

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

如果想阻止http包,可以使用如下配置

VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"

使用下面的命令为vnc设置密码(需要使用su 切换到要设置vnc密码的用户上,比如:su user1,其中user1就是在上面配置文件内写的帐号)

vncpasswd

设置好密码之后,就是启动VNC服务了,启动VNC服务的时候也需要用su user1(user1就是在上面配置文件内写的帐号)切换到要启动服务的帐号上(很多朋友在使用DirectSpace默认的桌面VNC的时候,遇到无法连接“10061错误”,即可在ssh下输入下面命令解决!)

vncserver

其他命令,比如重启VNC服务就用下面的命令:

service vncserver restart

设置VNC服务开机启动用下面的命令:

chkconfig vncserver on

在一些minimal系统里,即使英文也会出现方框乱码,请使用本处命令修正:yum -y install fontforge

其它说明:

设置完毕后使用servers vncserver start(如果不能启动,检查软件是否安装正常,检查/etc/rc.d/init.d目录是否存在vncserver控制脚本),

启动完毕后使用netstat -nat查看监听端口(默认为5901,5902,5903等),如果开启了防火墙,则需要配置规则允许对应端口tcp包通过。

参考配置:iptables -I INPUT 1 -p tcp --dport 5901 -j ACCEPT(其中-I INPUT 1代表插入一条规则,这条规则的位置是1,详情请查阅iptables相关配置)


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

原文地址: http://outofmemory.cn/yw/7439980.html

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

发表评论

登录后才能评论

评论列表(0条)

保存