温馨提示×

debian vnc如何保活

小樊
42
2026-10-25 11:10:35
栏目: 智能运维

在 Debian 上让 VNC“保活”(不断线、不休眠、开机自启、断线自动重连/重启),通常从服务保活、会话保活、网络保活三方面入手。下面以最常见的 TigerVNC / RealVNC / x11vnc 为例说明。


一、用 systemd 保活(推荐,最稳)

1. TigerVNC 用户服务(断线不退出)

sudo apt install tigervnc-standalone-server

创建用户服务:

mkdir -p ~/.config/systemd/user

~/.config/systemd/user/vnc.service

[Unit]
Description=VNC Server
After=graphical.target

[Service]
ExecStart=/usr/bin/vncserver :1 -geometry 1920x1080 -alwaysshared -fg
Restart=always
RestartSec=3

[Install]
WantedBy=default.target

启用:

systemctl --user daemon-reexec
systemctl --user enable --now vnc.service

关键点

  • Restart=always → 崩了自动拉起
  • -fg → 前台运行,systemd 能管住
  • --user → 不依赖 root

二、x11vnc 保活(适合已有桌面)

sudo apt install x11vnc

systemd 服务示例:

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

[Service]
ExecStart=/usr/bin/x11vnc -display :0 -forever -shared -repeat -rfbauth /home/user/.vnc/passwd
Restart=always
RestartSec=3

[Install]
WantedBy=multi-user.target

启用:

sudo systemctl enable --now x11vnc

参数说明

  • -forever → 客户端断开不退出
  • -repeat → 防止空闲断线
  • Restart=always → 保活核心

三、防止“空闲断线 / 黑屏”

1. 关闭电源管理

sudo apt install xss-lock
xset s off
xset -dpms
xset s noblank

写入 ~/.xsessionrc 永久生效。

2. GNOME / KDE 关闭锁屏

gsettings set org.gnome.desktop.screensaver lock-enabled false
gsettings set org.gnome.desktop.session idle-delay 0

四、网络层保活(SSH 隧道场景)

如果你用 ssh -L 连 VNC:

SSH 客户端

~/.ssh/config

Host debian
  ServerAliveInterval 30
  ServerAliveCountMax 3

SSH 服务端

/etc/ssh/sshd_config

ClientAliveInterval 30
ClientAliveCountMax 3

五、开机自启 + 断网重连

  • systemd 服务 ✅
  • 路由器端口映射 / frp / tailscale ✅
  • nohup 不推荐(管不住)

六、最小保活方案(一句话版)

vncserver :1 -alwaysshared -fg
systemd Restart=always
xset s off -dpms

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

  • 用的是 TigerVNC / RealVNC / x11vnc
  • 是否有 桌面环境
  • 是否走 SSH / 公网 / 内网

我可以直接给你一份可复制的 systemd 文件。

0 踩