CentOS7安装vncserver(启动失败及连接黑屏解决办法)

CentOS7安装vncserver(启动失败及连接黑屏解决办法)

转载weixin_34167043 最后发布于2017-11-09 15:11:00 阅读数 42  收藏
CentOS7安装vncserver(启动失败及连接黑屏解决办法)
AutoSAR入门到精通系列讲解
将从2019年开始更新关于AutoSAR的知识,从入门到精通,博主xyfx和大家一起进步
CentOS7安装vncserver(启动失败及连接黑屏解决办法)雪云飞星
¥29.00
去订阅

一.安装

以root用户运行以下命令来安装vncserver;

yum install tigervnc-server 

同样运行以下命令来安装vncviewer;

yum install vnc

停止并禁用防火墙;

  1.  
    systemctl stop firewalld.service
  2.  
    systemctl disable firewalld.service

二.配置

vncviewer基本上不用配置;
vncserver的配置,创建一个新的配置文件,以开启1号窗口为例(也可以同时开启多个窗口,修改数字即可),方法如下:

cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service

或者再增加一个窗口:

cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:2.service

编辑/lib/systemd/system/vncserver@:1.service,设置用户root相关参数,最终内容如下:

  1.  
    [Unit]
  2.  
    Description=Remote desktop service (VNC)
  3.  
    After=syslog.target network.target
  4.  
    [Service]
  5.  
    Type=forking
  6.  
    #Clean any existing files in /tmp/.X11-unix environment
  7.  
    ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
  8.  
    ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
  9.  
    PIDFile=/root/.vnc/%H%i.pid
  10.  
    ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

1.设置为非root用户报错:

  1.  
    [root@localhost system]# systemctl status -l vncserver@:2.service
  2.  
    vncserver@:2.service - Remote desktop service (VNC)
  3.  
    Loaded: loaded (/etc/systemd/system/vncserver@:2.service; enabled; vendor preset:
  4.  
    disabled)
  5.  
    Active: failed (Result: exit-code) since 一 2016-04-25 19:07:23 CST; 7s ago
  6.  
    Process: 10305 ExecStart=/usr/sbin/runuser -l fang -c /usr/bin/vncserver %i (code=exited,
  7.  
    status=1/FAILURE)
  8.  
    Process: 10291 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || :
  9.  
    (code=exited, status=0/SUCCESS)
  10.  
    
4月 25 19:07:23 localhost.localdomain systemd[1]: Starting Remote desktop service (VNC)...
  11.  
    4月 25 19:07:23 localhost.localdomain systemd[1]: vncserver@:2.service: control process
  12.  
    exited, code=exited status=1
  13.  
    4月 25 19:07:23 localhost.localdomain systemd[1]: Failed to start Remote desktop service
  14.  
    (VNC).
  15.  
    4月 25 19:07:23 localhost.localdomain systemd[1]: Unit vncserver@:2.service entered failed
  16.  
    state.
  17.  
    4月 25 19:07:23 localhost.localdomain systemd[1]: vncserver@:2.service failed.

2.Type=forking报错,改为Type=simple

  1.  
    [root@localhost system]# systemctl start vncserver@:2.service
  2.  
    Job for vncserver@:2.service failed because the control process exited with error code. See
  3.  
    "systemctl status vncserver@:2.service" and "journalctl -xe" for details.
  4.  
    [root@localhost system]# systemctl status -l vncserver@:2.service
  5.  
    ● vncserver@:2.service - Remote desktop service (VNC)
  6.  
    Loaded: loaded (/etc/systemd/system/vncserver@:2.service; enabled; vendor preset:
  7.  
    disabled)
  8.  
    Active: failed (Result: exit-code) since 一 2016-04-25 19:09:41 CST; 6s ago
  9.  
    Process: 12367 ExecStart=/usr/sbin/runuser -l root -c /usr/bin/vncserver %i (code=exited,
  10.  
    status=98)
  11.  
    Process: 12354 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || :
  12.  
    (code=exited, status=0/SUCCESS)
  13.  
    
4月 25 19:09:41 localhost.localdomain systemd[1]: Starting Remote desktop service (VNC)...
  14.  
    4月 25 19:09:41 localhost.localdomain systemd[1]: vncserver@:2.service: control process
  15.  
    exited, code=exited status=98
  16.  
    4月 25 19:09:41 localhost.localdomain systemd[1]: Failed to start Remote desktop service
  17.  
    (VNC).
  18.  
    4月 25 19:09:41 localhost.localdomain systemd[1]: Unit vncserver@:2.service entered failed
  19.  
    state.
  20.  
    4月 25 19:09:41 localhost.localdomain systemd[1]: vncserver@:2.service failed.

3.vnc viewer客户端连接黑屏

改变xstartup的权限
这个问题是很多人容易忽视的问题,也是造成连接成功后黑屏的原因之一。
在CentOS中,xstartup的文件路径为:/root/.vnc/ (可以通过locate xstartup来查看xstartup的文件路径)
所以需要执行:chmod 777 /root/.vnc/xstartup

上一篇:BZOJ 2276 Temperature


下一篇:windows service 1053错误 启动失败