温馨提示×

Ubuntu VNC如何自动启动

小樊
38
2026-10-04 03:42:15
栏目: 智能运维

在 Ubuntu 上让 VNC 自动启动,常见有三种方式,取决于你用的是 桌面环境 + 显示管理器 还是 无桌面服务器(headless)。下面按最常见场景给你讲。


一、桌面版 Ubuntu(有图形界面)

方法 1:开机自动启动(最简单)

适用于:Ubuntu Desktop

  1. 先手动测试 VNC 能正常启动
vncserver :1
  1. 创建自启动文件
mkdir -p ~/.config/autostart
nano ~/.config/autostart/vnc.desktop

内容:

[Desktop Entry]
Type=Application
Name=VNC Server
Exec=vncserver :1
Hidden=false
  1. 重启即可自动启动

✅ 优点:简单
❌ 缺点:必须登录用户


二、服务器版 / 无桌面(推荐 systemd)

方法 2:systemd 服务(最稳定)

以用户 ubuntu 为例:

1. 设置 VNC 密码

vncpasswd

2. 创建 systemd 服务

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

内容:

[Unit]
Description=VNC Server for %i
After=network.target

[Service]
Type=forking
User=ubuntu
ExecStart=/usr/bin/vncserver :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

3. 启用并启动

sudo systemctl daemon-reexec
sudo systemctl enable vncserver@1
sudo systemctl start vncserver@1

✅ 开机自动启动
✅ 不依赖登录


三、无显示器(Headless)必须做的

如果服务器 没有显示器,需要虚拟显示:

sudo apt install xserver-xorg-core xserver-xorg-video-dummy

或直接使用:

vncserver :1 -geometry 1920x1080 -depth 24

四、常见 VNC 软件对应命令

软件 命令
tightvnc vncserver :1
tigervnc vncserver :1
x11vnc x11vnc -display :0

五、防火墙记得开端口

sudo ufw allow 5901

六、推荐做法(总结)

  • ✅ 服务器 → systemd
  • ✅ 桌面版 → autostart
  • ❌ 不建议 rc.local

如果你告诉我:

  • Ubuntu 版本(20.04 / 22.04 / 24.04)
  • 是否服务器
  • 用的 VNC 软件

我可以给你 精准配置命令。

0 踩