VNC启动报错A VNC server is already running as :10
开启vncserver session10
systemctl start vncserver@:10.service
systemctl start vncserver@:10.service
查看vnc 监听状态
netstat -antp | grep 59
netstat -antp | grep 59
session10连接未建立
查看session10状态
systemctl status vncserver@:10.service
systemctl status vncserver@:10.service
● vncserver@:10.service - Remote desktop service (VNC)
Loaded: loaded (/etc/systemd/system/vncserver@:10.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Mon 2022-11-21 18:14:23 CST; 8s ago
Process: 245741 ExecStart=/usr/bin/vncserver_wrapper user010 %i (code=exited, status=2)
Process: 245733 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
Main PID: 245741 (code=exited, status=2)
Nov 21 18:14:23 nj01 systemd[1]: Starting Remote desktop service (VNC)…
Nov 21 18:14:23 nj01 systemd[1]: Started Remote desktop service (VNC).
Nov 21 18:14:23 nj01 vncserver_wrapper[245741]: A VNC server is already running as :10
Nov 21 18:14:23 nj01 vncserver_wrapper[245741]: FATAL: ‘runuser -l user010’ failed!
Nov 21 18:14:23 nj01 systemd[1]: vncserver@:10.service: main process exited, code=exited, status=2/INVALIDARGUMENT
Nov 21 18:14:23 nj01 systemd[1]: Unit vncserver@:10.service entered failed state.
Nov 21 18:14:23 nj01 systemd[1]: vncserver@:10.service failed.
参照网络教程,使用/usr/sbin/lsof -i tcp:5910查看端口占用,无输出
/usr/sbin/lsof -i tcp:5910
找不到进程当然无法kill,使用vncserver -kill :5910也是无效的
vnc的缺省端口是main:5900(C/S)和http:5800(B/S)端口
检查5910端口和5810,无输出
netstat -an | grep 5910
netstat -an | grep 5810
查看vnc端口说明:Linux下的VNC可以同时启动多个vncserver,各个vncserver之间用显示编号(display number)来区分,每个vncserver服务监听3个端口,它们分别是:
5800+显示编号: VNC的httpd监听端口,如果VNC客户端为IE,Firefox等非vncviewer时必须开放。 5900+显示编号: VNC服务端与客户端通信的真正端口,必须无条件开放。
6000+显示编号: X监听端口,可选。
查看6010端口占用情况
/usr/sbin/lsof -i tcp:6010
[root@nj01]$ /usr/sbin/lsof -i tcp:6010
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sshd 19464 root 8u IPv4 143749109 TCP localhost.localdomain:x11-ssh-offset (LISTEN)
确认是sshd占用了6010端口
kill进程后重新开启vnc服务,成功
使用X11 forwording进行图像映射时,在client端(目标机器,即ssh连接的机器)会根据sshd_config中的配置X11DisplayOffset启动对应端口进行转发,配置默认值是10,即启动6010端口进行转发。该端口有时会和Xserver启动的端口冲突,导致Xserver无法启动。
可以通过修改X11DisplayOffset配置来避免冲突。
vim /etc/ssh/sshd_config
X11DisplayOffset 50
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)