笔记

vnc配置解决:

一、Linux主机安装VNC服务

1、安装vnc-server

VNC分为服务端和客户端,linux服务器主机需要安装vncserver,centos7下一般使用tigervnc。
root下执行命令:

#yum install -y tigervnc-server

安装完毕后需要配置。

2、配置vnc-server

进入目录

#cd /lib/systemd/system#ls

我们会看到有个service叫做vncserver@.service,这就是我们需要的vnc服务。但是需要对它进行配置才可以使用。假设我们当前为root用户配置远程桌面,配置流程如下:

首先,复制该service,命名为vncserver@:1.service,

#cp vncserver@.service vncserver@:1.service

然后修改vncserver@:1.service

#vi vncserver@:1.service

看到如下文本:

[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 < User> -c “/usr/bin/vncserver %i ”
PIDFile=/home/< User>/.vnc/%H%i.pid
ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’

[Install]
WantedBy=multi-user.target

这里需要且只需要做一种替换:将< User>替换为需要配置的用户。注意因为root的home目录就是/root/,而不是/home/root/,所以替换后文本如下:

修改:1.Type=simple;2.%i变成:1;3.<user>变成root

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=simple
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill :1 > /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 :1 > /dev/null 2>&1 || :’

[Install]
WantedBy=multi-user.target

如果是非root用户,例如用户admin,PIDFile处应该是:

ExecStart=/sbin/runuser -l admin -c “/usr/bin/vncserver %i ”
PIDFile=/home/admin/.vnc/%H%i.pid

最后Esc+:wq保存退出。

3、启动vnc-server

在刚才的配置文件中,有这样一段说明:

# Quick HowTo:
# 1. Copy this file to /etc/systemd/system/vncserver@:.service
# 2. Edit and vncserver parameters appropriately
# (“runuser -l -c /usr/bin/vncserver %i -arg1 -arg2”)
# 3. Run systemctl daemon-reload
# 4. Run `systemctl enable vncserver@:.service

即配置完后,还需执行

#systemctl daemon-reload#systemctl enable vncserver@:1.service

然后开启vnc服务

#systemctl start vncserver@:1.service

查看启动是否成功

#systemctl status vncserver@:1.service

如果现实active即表示开启成功。下面设置下vnc连接密码,
执行

#vncpassword

提示输入密码并确认,这是供远程连接时验证用的,自己设置一下即可。配置好以后可以重启下vnc服务

#systemctl restart vncserver@:1.service

4、配置防火墙

vnc服务虽然开启了,但是如果远程客户端需要连接,还需要为防火墙增加配置以开放端口。一般vnc服务是以590+x作为访问端口,x为配置的service@:x,例如此处的vncserver@:1.service,则端口是5901。
执行命令

#vi /etc/sysconfig/iptables

-A INPUT -p tcp -m state –state NEW -m tcp –dport 22 -j ACCEPT

下方添加配置

-A INPUT -p tcp -m state –state NEW -m tcp –dport 5901 -j ACCEPT

然后保存退出,重启防火墙。到这里基本的vnc服务端配置就结束了。

附加:vnc之后运行错误解决:

1.vncserver :1

2.rm -rf /tmp/.X11-unix/X1

3.systemctl start vncserver@:1.service

4.systemctl status vncserver@:1.service

转载:http://www.th7.cn/system/win/201508/127000.shtml

 

posted @ 2016-05-17 11:07  最美的时光-  阅读(147)  评论(0编辑  收藏  举报