转载文章:
https://blog.csdn.net/hnhuangyiyang/article/details/50827670
一、安装VNC相关包
yum list tigerserver*
yum install tigervnc-server
二、复制配置模板文件为vncserver@:1.service
cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service
或者
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
三、修改/lib/systemd/system/vncserver@:1.service配置文件
更改,
如果上面复制vncserver@:1.service路径是lib,那么改为root,/home/改为/root/。
如果上面复制vncserver@:1.service路径是etc,那么改为非root用户,/home/改为/home/非root用户
[root@kvm01 ~]# cat /lib/systemd/system/vncserver@:1.service | grep -v ^# | grep -v ^$
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’
ExecStart=/usr/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 || :’
[Install]
WantedBy=multi-user.target
四、设置VNC用户密码
vncpasswd
输入两次密码,完成密码设置
五、重新载入system配置
systemctl daemon-reload
六、启动vncserver@:1.service服务,并设置开机自启
systemctl start vncserver@:1.service && systemctl enable vncserver@:1.service
注:若系统无法正常关机,则再次启动,此服务无法启动,解决办法参照步骤七
七、问题解决
1.报错: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.
处理方法:
rm -rf /tmp/.X11-unix/
报错:Failed to execute operation: File exists
.systemd的displaymanager.service存在着,链接到你曾经enable的那个dm的service上.因为文件存在着,所以创建软链接失败.解决办法是先disable之前的那个dm的service,再enable lxdm.或者直接删掉那个displaymanager软链接先,在/etc/systemd/下找找这个名字
八、设置防火墙
NVC默认是被防火墙阻止的,折腾了好久才弄好
终端中执行下面命令
[root@localhost ~]# firewall-cmd --permanent --add-service="vnc-server" --zone="public"
[root@localhost ~]# firewall-cmd --reload
或者停用防火墙
停止并禁用防火墙;
systemctl stop firewalld.service
systemctl disable firewalld.service