温馨提示×

怎样在Ubuntu开启VNC服务

小樊
40
2026-10-04 03:33:16
栏目: 智能运维

在 Ubuntu 上开启 VNC 服务,常见做法有两种:使用系统自带桌面 + VNC Server(如 TigerVNC / TightVNC),或 使用云/无界面环境下的轻量方案。下面给你一个最常用、稳定的桌面版 Ubuntu 开启 VNC 教程(以 TigerVNC 为例,Ubuntu 20.04/22.04/24.04 通用)。


一、安装桌面环境(如果已有 GNOME 可跳过)

如果是最小化安装 / 服务器版,先装桌面:

sudo apt update
sudo apt install -y ubuntu-desktop

或轻量一些:

sudo apt install -y xfce4 xfce4-goodies

二、安装 VNC Server

推荐使用 TigerVNC:

sudo apt install -y tigervnc-standalone-server tigervnc-common

三、设置 VNC 密码

vncpasswd

会生成:

~/.vnc/passwd

四、配置 VNC 启动环境

编辑或创建:

nano ~/.vnc/xstartup

如果你是 GNOME 桌面:

#!/bin/sh
export XKL_XMODMAP_DISABLE=1
exec /etc/X11/Xsession

如果是 XFCE:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4

保存后赋予执行权限:

chmod +x ~/.vnc/xstartup

五、启动 VNC 服务

vncserver :1 -geometry 1920x1080 -depth 24
  • :1 → 端口 5901
  • :2 → 端口 5902

查看状态:

vncserver -list

六、防火墙放行(如有)

sudo ufw allow 5901

七、远程连接

使用 VNC 客户端(RealVNC / TigerVNC Viewer):

服务器IP:5901

输入前面设置的密码即可。


八、设置开机自启(systemd)

创建服务:

sudo nano /etc/systemd/system/vncserver@.service

内容(替换 username):

[Unit]
Description=VNC Server
After=syslog.target network.target

[Service]
Type=forking
User=username
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

九、常见问题

1. 灰屏

通常是 xstartup 没配置桌面环境。

2. 云服务器建议

不要直接暴露 5901 到公网,建议:

ssh -L 5901:localhost:5901 user@server

再用本地 VNC 连 localhost:5901


如果你告诉我:

  • Ubuntu 版本
  • 是否有桌面
  • 是否云服务器 / 内网

我可以给你更精准的方案(比如无桌面 headless VNC、x11vnc、RealVNC 等)。

0 踩