在 Debian 上让 VNC 开机自启动,常见做法取决于你使用的 VNC 服务器类型 和 显示方式(系统服务 / 用户会话)。下面以 最常用、最稳定 的几种方式为你说明。
sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common
vncpasswd
假设你要启动 :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
保存后退出。
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1
sudo systemctl start vncserver@1
✅ 开机将自动启动 :1
systemctl status vncserver@1
sudo apt install x11vnc
x11vnc -storepasswd
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
sudo systemctl daemon-reload
sudo systemctl enable x11vnc
sudo systemctl start x11vnc
ss -lntp | grep 590
应看到:
5901
5900
等端口。
~/.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 |
如果你愿意,可以告诉我:
我可以给你 完全定制的一套配置。