可能遇到的问题(CentOS环境下)
1.设置为非root用户报错:
[root@ecs-f61c-0001 sysconfig]# systemctl status -l vncserver@:2.service vncserver@:2.service - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/vncserver@:2.service; enabled; vendor preset: disabled) Active: failed (Result: exit-code) since 一 2016-04-25 19:07:23 CST; 7s ago Process: 10305 ExecStart=/usr/sbin/runuser -l fang -c /usr/bin/vncserver %i (code=exited, status=1/FAILURE) Process: 10291 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS) 4月 25 19:07:23 localhost.localdomain systemd[1]: Starting Remote desktop service (VNC)... 4月 25 19:07:23 localhost.localdomain systemd[1]: vncserver@:2.service: control process exited, code=exited status=1 4月 25 19:07:23 localhost.localdomain systemd[1]: Failed to start Remote desktop service (VNC). 4月 25 19:07:23 localhost.localdomain systemd[1]: Unit vncserver@:2.service entered failed state. 4月 25 19:07:23 localhost.localdomain systemd[1]: vncserver@:2.service failed.
2.Type=forking报错,改为Type=simple
[root@ecs-f61c-0001 sysconfig]# systemctl start vncserver@:2.service Job for vncserver@:2.service failed because the control process exited with error code. See "systemctl status vncserver@:2.service" and "journalctl -xe" for details. [root@ecs-f61c-0001 sysconfig]# systemctl status -l vncserver@:2.service ● vncserver@:2.service - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/vncserver@:2.service; enabled; vendor preset: disabled) Active: failed (Result: exit-code) since 一 2016-04-25 19:09:41 CST; 6s ago Process: 12367 ExecStart=/usr/sbin/runuser -l root -c /usr/bin/vncserver %i (code=exited, status=98) Process: 12354 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS) 4月 25 19:09:41 localhost.localdomain systemd[1]: Starting Remote desktop service (VNC)... 4月 25 19:09:41 localhost.localdomain systemd[1]: vncserver@:2.service: control process exited, code=exited status=98 4月 25 19:09:41 localhost.localdomain systemd[1]: Failed to start Remote desktop service (VNC). 4月 25 19:09:41 localhost.localdomain systemd[1]: Unit vncserver@:2.service entered failed state. 4月 25 19:09:41 localhost.localdomain systemd[1]: vncserver@:2.service failed.
3.vnc viewer客户端连接黑屏,改变xstartup的权限
这个问题是很多人容易忽视的问题,也是造成连接成功后黑屏的原因之一。
在CentOS中,xstartup的文件路径为:/root/.vnc/ (可以通过locate xstartup来查看xstartup的文件路径)
所以需要执行:
[root@ecs-f61c-0001 sysconfig]# chmod 777 /root/.vnc/xstartup
关闭防火墙
[root@ecs-f61c-0001 sysconfig]# systemctl stop firewalld.service #停止 [root@ecs-f61c-0001 sysconfig]# systemctl disable firewalld.service #禁用