在 Ubuntu 上使用 VNC 一般分三步:安装 VNC 服务 → 配置 → 用客户端连接。下面给你一套最常用、最稳妥的做法(适用于 Ubuntu 20.04 / 22.04 / 24.04)。
以 TigerVNC 为例(稳定、速度快)。
如果服务器没有桌面:
sudo apt update
sudo apt install ubuntu-desktop
或轻量一点:
sudo apt install xfce4 xfce4-goodies
sudo apt install tigervnc-standalone-server tigervnc-common
vncpasswd
密码保存在 ~/.vnc/passwd
nano ~/.vnc/xstartup
内容示例(GNOME):
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec /usr/bin/gnome-session
如果是 XFCE:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4
保存后:
chmod +x ~/.vnc/xstartup
vncserver :1 -geometry 1920x1080 -depth 24
:1 → 端口 5901:2 → 端口 5902查看:
vncserver -list
停止:
vncserver -kill :1
sudo ufw allow 5901/tcp
推荐使用:
连接地址:
服务器IP:1
或
服务器IP:5901
输入刚才设置的 VNC 密码即可。
sudo nano /etc/systemd/system/vncserver@.service
内容:
[Unit]
Description=VNC Server
After=network.target
[Service]
Type=forking
User=你的用户名
ExecStart=/usr/bin/vncserver :%i
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1
sudo systemctl start vncserver@1
xstartup 没执行权限unset DBUS_SESSION_BUS_ADDRESS✅ 不要直接暴露 5901 到公网
✅ 使用 SSH 隧道:
ssh -L 5901:localhost:5901 用户名@服务器IP
然后 VNC 连接:
localhost:5901
如果你愿意,可以告诉我:
我可以给你完全定制的一套命令。