可能遇到的问题(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 #禁用