首先试试服务器装了VNC没
[root@wic ~]# rpm -q tigervnc tigervnc-server
没安装的话会直接出现
package tigervnc is not installed package tigervnc-server is not installed
第一步,安装VNC packages:
[root@wic ~]# yum install tigervnc-server -y
第二步,修改配置信息,在/etc/systemd/system/下建立文件夹vncserver@:1.service 把example config 文件从/lib/systemd/system/vncserver@.service复制到里面
[root@wic ~]# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
然后打开这个配置文件/etc/systemd/system/vncserver@:1.service替换掉默认用户名
找到这一行
ExecStart=/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i" PIDFile=/home/<USER>/.vnc/%H%i.pid
这里用root 用户登录,所以替换成
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i" PIDFile=/root/.vnc/%H%i.pid
上述内容中最好设置为root用户,否则可能会看到以下报错:
-
vncserver@:1.service - Remote desktop service (VNC)
Loaded: loaded (
/usr/lib/systemd/system/vncserver
@:1.service; enabled)
Active: failed (Result:
exit
-code) since Tue 2015-04-14 10:09:24 CST; 1min 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-SWPE runuser[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.
第三步,重加载 systemd
[root@wic ~]# systemctl daemon-reload
第四步,为VNC设密码
[root@wic ~]# vncpasswd
第五步,Centos 7 默认防火墙的设置
[root@wic ~]# firewall-cmd --permanent --add-service vnc-server [root@wic ~]# systemctl restart firewalld.service
如果还是有问题可以试试关闭防火墙
-
停止并禁用防火墙; systemctl stop firewalld.service systemctl disable firewalld.service
第六步,设默认启动并开启VNC
[root@wic ~]# systemctl enable vncserver@:1.service [root@wic ~]# systemctl start vncserver@:1.service
问题:[root@localhost system]# systemctl start vncserver@:1.service
Job for vncserver@:1.service failed. See ‘systemctl status vncserver@:1.service’ and ‘journ
alctl -xn’ for details.
解决办法:把 /etc/systemd/system/vncserver@:1.service 中的 Type 參數設置為 simple
再執行 systemctl daemon-reload
再執行 systemctl start vncserver:1.service
即可解決
应用
-
更新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