Ubuntu 物理桌面远程访问教程(基于 RealVNC / mstsc)
Ubuntu 物理桌面远程访问教程(基于 RealVNC / mstsc)
适用对象:任意安装了 GNOME + GDM 的 Ubuntu 系统
目标:远程连接系统默认物理桌面:0
,无虚拟桌面、无 Xfce,真实 GNOME 桌面环境
1. 准备条件
- Ubuntu 系统已安装并正常运行 GNOME 桌面(Ubuntu Desktop)
- GDM3 作为默认显示管理器(登录管理器)
- 系统默认启动目标为图形界面
- 网络可达,VNC 客户端已安装(RealVNC Viewer、mstsc + VNC插件等)
2. 安装必要软件
sudo apt update
sudo apt install gdm3 ubuntu-desktop gnome-shell gnome-session x11vnc -y
说明:
gdm3
是 GNOME 显示管理器x11vnc
是用于远程附着物理桌面的 VNC 服务器
3. 配置默认显示管理器为 GDM3
执行:
sudo dpkg-reconfigure gdm3
选择 gdm3 作为默认显示管理器。
如果该命令无效,手动检查:
cat /etc/X11/default-display-manager
应为:
/usr/sbin/gdm3
4. 设置系统默认启动到图形界面
sudo systemctl set-default graphical.target
5. 配置 GDM 自动登录(可选)
编辑:
sudo nano /etc/gdm3/custom.conf
找到并取消注释以下行,替换为你的用户名:
AutomaticLoginEnable = true
AutomaticLogin = your_username
保存并退出。
6. 创建 x11vnc systemd 服务,附着物理桌面
创建服务文件:
sudo nano /etc/systemd/system/x11vnc.service
写入:
[Unit]
Description=Start x11vnc at boot and attach to physical display :0
After=graphical.target network.target gdm.service
Requires=graphical.target[Service]
Type=simple
User=your_username
ExecStart=/usr/bin/x11vnc -display :0 -auth guess -forever -shared -nopw
Restart=on-failure
Environment=DISPLAY=:0
Environment=XAUTHORITY=/home/your_username/.Xauthority[Install]
WantedBy=graphical.target
注意替换所有
your_username
为你的实际登录用户名。
7. 启用并启动 x11vnc 服务
sudo systemctl daemon-reload
sudo systemctl enable x11vnc
sudo systemctl start x11vnc
8. 重启系统
sudo reboot
9. 验证物理桌面运行状态
SSH 登录后执行:
ps -ef | grep gnome-shell
如果显示有 gnome-shell
、gnome-session
、/usr/lib/xorg/Xorg :0
等进程,说明物理桌面正常启动。
10. 使用 RealVNC 或 mstsc(带 VNC 插件)连接
- 目标地址:Ubuntu 机器 IP 地址
- 端口:默认 5900
- 连接后即可看到完整的系统 GNOME 物理桌面,无虚拟桌面,无 Xfce。
常见问题
- 连接被拒绝:确认防火墙是否放行5900端口
- 黑屏或无响应:确认 GDM 正常运行,系统已进入图形界面
- 认证失败:x11vnc 配置了
-nopw
,初期可无密码,正式环境建议设置密码
总结
- 本方案直接附着 Ubuntu 默认物理桌面
- 避免使用虚拟桌面脚本或 Xfce 桌面
- 适合 Jetson、服务器或任何 Ubuntu 桌面远程访问需求
- 兼容 RealVNC、mstsc(结合 VNC 插件)等常用客户端