温馨提示×

VNC服务在Debian如何启动

小樊
44
2026-07-16 00:06:00
栏目: 智能运维

在 Debian 上启动 VNC 服务,常见做法是使用 TigerVNCRealVNC / x11vnc。下面以 TigerVNC 为例,给你一套最常用、最稳妥的步骤(适用于 Debian 10/11/12)。


一、安装 VNC 服务(TigerVNC)

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

二、设置 VNC 密码

vncpasswd

密码会保存在:

~/.vnc/passwd

三、启动 VNC 服务(手动方式)

1️⃣ 启动一个 VNC 会话(例如 :1)

vncserver :1
  • :1 表示端口 5901
  • :2 → 5902,以此类推

2️⃣ 查看是否启动成功

ss -lntp | grep 590

或:

ps aux | grep vnc

四、配置桌面环境(非常重要)

如果你没有桌面环境,VNC 可能只显示灰屏。

安装桌面(如 XFCE,轻量推荐)

sudo apt install xfce4 xfce4-goodies

配置 VNC 使用 XFCE

编辑或创建:

nano ~/.vnc/xstartup

内容如下(最常见配置):

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

赋予执行权限:

chmod +x ~/.vnc/xstartup

五、重启 VNC 会话

vncserver -kill :1
vncserver :1

六、使用 systemd 启动(推荐服务器使用)

1️⃣ 创建 systemd 服务

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

内容(假设用户是 debian,请替换):

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

[Service]
Type=forking
User=debian
Group=debian
WorkingDirectory=/home/debian

ExecStartPre=-/usr/bin/vncserver -kill :%i
ExecStart=/usr/bin/vncserver :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

2️⃣ 启用并启动

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

七、防火墙放行(如有)

sudo ufw allow 5901/tcp

八、客户端连接

使用任意 VNC 客户端连接:

IP:5901

例如:

192.168.1.100:1

九、常见问题

❓ 灰屏

  • 没装桌面
  • ~/.vnc/xstartup 没执行权限
  • 桌面环境未正确启动

❓ 无法连接

  • 防火墙未放行
  • VNC 没监听在 0.0.0.0

十、替代方案(简单但不够安全)

sudo apt install x11vnc
x11vnc -display :0

⚠️ 不推荐用于公网


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

  • Debian 版本
  • 是否有桌面环境
  • 是本地服务器还是云服务器

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

0