ubuntu 设置x11vnc服务

Ubuntu 18.04 设置x11vnc服务

自带的vino-server也可以用但是不好用,在ubuntu论坛上看见推荐的x11vnc(ubuntu关于vnc的帮助页面),使用设置一下,结果发现有一些坑需要填,所以写下来方便下次使用

转载请说明出处,谢谢配合😆

下载并安装x11vnc

shell 复制代码
apt update -y
apt install -y x11vnc

配置开启自启动

shell 复制代码
#让x11vnc在任何环境下通过systemd自动启动
vim /lib/systemd/system/x11vnc.service

#将下方内容填写到/lib/systemd/system/x11vnc.service文件中,USERNAME换成你自己环境中的用户,也可以使用x11vnc -storepasswd 指定认证密码存储位置
[Unit]
Description=Start x11vnc at startup.
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/USERNAME/.vnc/passwd -rfbport 5900 -shared -display :0

[Install]
WantedBy=multi-user.target

#重载 systemd 管理的单元文件,使配置生效(没有权限的话使用root用户或sudo)
systemctl daemon-reload

#开机自启设置
systemctl enable x11vnc.service

#启动x11vnc
systemctl start x11vnc.service

#重启x11vnc
systemctl restart x11vnc.service

#关闭x11vnc
systemctl stop x11vnc.service

#查看x11vnc状态
systemctl status x11vnc.service

问题与解决方案

  1. x11vnc连接黑屏
shell 复制代码
#查看ubuntu的桌面管理环境是否是GDM3,x11vnc 在 GDM3 中不起作用,因此需要使用lightdm桌面管理环境

#安装lightdm(权限不够使用root用户或sudo)
apt install -y lightdm

#切换至lightdm
dpkg-reconfigure lightdm
#选择lightdm,如下图
  1. x11vnc使用-auth guess无法启动
shell 复制代码
#使用guess可能会出现问题
#也可以通过下面的命令查看auth指定lightdm Xauthority文件的路径
ps aux | grep auth
  1. 不使-display :0会出现如下问题
bash 复制代码
 xauth:  unable to generate an authority file name 
xauth:  unable to generate an authority file name
-auth guess: using default XAUTHORITY for display='unset' XOpenDisplay("") failed.
Trying again with XAUTHLOCALHOSTNAME=localhost ...
XOpenDisplay failed. No -display or DISPLAY.
Trying ":0" in 4 seconds.  Press Ctrl-C to abort.

查看x11vnc进程与防火墙

shell 复制代码
#查看进程是否存在,
netstat -ntlup | grep x11vnc

#查看防火墙是否允许允许vnc指定的端口访问

shell 复制代码
#允许5900端口访问
iptables -A INPUT -p tcp --dport 5900-j ACCEPT
#或直接使用iptables -F

#没有iptables查看ufw状态
ufw status

#禁用ufw
ufw disable
相关推荐
riderxin几秒前
【20251028】固定Ubuntu的IP地址
linux·tcp/ip·ubuntu
人工智能训练1 小时前
Ubuntu系统中Docker的常用命令总结
linux·运维·人工智能·ubuntu·docker·ai
catoop11 小时前
在 WSL 的 Ubuntu 中安装和配置 SSH 服务
linux·ubuntu·ssh
pursue.dreams12 小时前
Ubuntu安装Jenkins完整教程
linux·ubuntu·jenkins
人工智能训练15 小时前
在ubuntu系统中如何将docker安装在指定目录
linux·运维·服务器·人工智能·ubuntu·docker·ai编程
qing2222222219 小时前
Ubuntu设置程序开机自启动:基于.service文件实现
linux·运维·ubuntu
lxmyzzs1 天前
在使用 `resolvconf` 的 Ubuntu 系统上持久化 DNS 设置
linux·运维·ubuntu
老黄编程1 天前
02-ubuntu24.04证书体系架构及证书有关配置文件、工具详细介绍
ubuntu·数字证书
catoop1 天前
在 Windows 中基于 WSL 子系统 Ubuntu 安装配置 conda 示例
windows·ubuntu·conda
老黄编程1 天前
03-gpg(证书管理 )详细范例
linux·运维·ubuntu·数字证书