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
相关推荐
全息数据16 小时前
WSL2 中将 Ubuntu 20.04 升级到 22.04 的详细步骤
深度学习·ubuntu·wsl2
q***518919 小时前
ubuntu 安装 Redis
linux·redis·ubuntu
稻谷君W21 小时前
Ubuntu 远程访问 Win11 WSL2 并固定访问教程
linux·运维·ubuntu
虚伪的空想家1 天前
华为昇腾Atlas 800 A2物理服务器开启VT-d模式
运维·服务器·ubuntu·kvm·vt-d·直通
q***18841 天前
Ubuntu上安装、使用Redis的详细教程
redis·ubuntu·bootstrap
人工智能训练1 天前
windows系统中的docker,xinference直接运行在容器目录和持载在宿主机目录中的区别
linux·服务器·人工智能·windows·ubuntu·docker·容器
代码对我眨眼睛1 天前
Ubuntu 系统 NVIDIA 显卡驱动自动化安装全流程
linux·ubuntu·自动化
xuyanqiangCode1 天前
Ubuntu二进制安装Apache Doris(2.1版本)
linux·ubuntu·apache
Warren982 天前
Python自动化测试全栈面试
服务器·网络·数据库·mysql·ubuntu·面试·职场和发展
HIT_Weston2 天前
39、【Ubuntu】【远程开发】拉出内网 Web 服务:构建静态网页(二)
linux·前端·ubuntu