温馨提示×

Debian如何开启VNC自启动

小樊
45
2026-08-26 08:40:15
栏目: 智能运维

Debian 上让 VNC 开机自启动,常见做法取决于你使用的 VNC 服务器类型显示方式(系统服务 / 用户会话)。下面以 最常用、最稳定 的几种方式为你说明。


一、使用 TigerVNC / RealVNC / x11vnc 作为系统服务(推荐)

示例:TigerVNC(Debian 官方仓库可用)

1️⃣ 安装 VNC 服务器

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

2️⃣ 设置 VNC 密码

vncpasswd

3️⃣ 创建 Systemd 服务

假设你要启动 :1(端口 5901)

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

内容如下(注意用户名替换):

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

[Service]
Type=forking
User=你的用户名
Group=你的用户名
WorkingDirectory=/home/你的用户名

ExecStartPre=-/usr/bin/vncserver -kill :%i
ExecStart=/usr/bin/vncserver :%i -geometry 1920x1080 -depth 24
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

保存后退出。


4️⃣ 重载并启用服务

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

✅ 开机将自动启动 :1


5️⃣ 检查状态

systemctl status vncserver@1

二、使用 x11vnc(适合已有桌面)

1️⃣ 安装

sudo apt install x11vnc

2️⃣ 设置密码

x11vnc -storepasswd

3️⃣ 创建 systemd 服务

sudo nano /etc/systemd/system/x11vnc.service

示例:

[Unit]
Description=x11vnc VNC Server
After=display-manager.service

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/你的用户名/.x11vnc/passwd -rfbport 5900 -shared

Restart=always
User=你的用户名

[Install]
WantedBy=multi-user.target

4️⃣ 启用自启

sudo systemctl daemon-reload
sudo systemctl enable x11vnc
sudo systemctl start x11vnc

三、验证 VNC 是否成功启动

ss -lntp | grep 590

应看到:

5901
5900

等端口。


四、常见问题

❌ 黑屏 / 无法连接

  • 是否安装了桌面环境(GNOME / XFCE)
  • ~/.vnc/xstartup 是否配置正确(TigerVNC)

示例 ~/.vnc/xstartup

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4
chmod +x ~/.vnc/xstartup

五、推荐组合(最稳定)

场景 推荐
Debian + 桌面 TigerVNC + XFCE
已有桌面共享 x11vnc
服务器无显示 TigerVNC

如果你愿意,可以告诉我:

  • Debian 版本(11 / 12)
  • 桌面环境(GNOME / XFCE / 无桌面)
  • VNC 用途(远程桌面 / 服务器管理)

我可以给你 完全定制的一套配置

0