温馨提示×

怎样备份Ubuntu VNC配置

小樊
32
2026-07-27 04:18:37
栏目: 智能运维

在 Ubuntu 上备份 VNC 配置,取决于你使用的是哪种 VNC 服务(如 TightVNC、TigerVNC、x11vnc、GNOME 远程桌面 等)。下面我按最常见场景给你一套通用且可操作的备份方法,你可以按需选择。


一、确定你使用的 VNC 类型

先确认使用的 VNC:

ps -ef | grep vnc

或:

which vncserver

常见结果:

  • /usr/bin/x11vnc → x11vnc
  • /usr/bin/tigervncserver → TigerVNC
  • /usr/bin/tightvncserver → TightVNC
  • gnome-remote-desktop → Ubuntu 自带远程桌面

二、通用 VNC 配置备份(强烈推荐)

1️⃣ 备份用户家目录下的 VNC 配置(最重要)

VNC 的配置基本都在用户目录下:

cp -r ~/.vnc ~/vnc_backup

常见内容:

~/.vnc/
├── config
├── xstartup
├── passwd
├── hostname:1.pid
├── hostname:1.log

必须备份

  • xstartup(桌面启动方式)
  • passwd(VNC 密码)
  • config(端口、分辨率等)

2️⃣ 备份系统级 VNC 服务(如有)

systemd 服务

cp -r /etc/systemd/system/vnc* ~/vnc_backup 2>/dev/null

或查看服务:

systemctl list-units --type=service | grep vnc

示例:

/etc/systemd/system/vncserver@.service

3️⃣ 备份桌面环境相关配置(防止黑屏)

如果你曾修改过:

cp -r ~/.config/autostart ~/vnc_backup
cp -r ~/.xsession ~/vnc_backup
cp -r ~/.Xauthority ~/vnc_backup

三、不同 VNC 的专项备份


✅ TigerVNC / TightVNC

配置文件位置:

~/.vnc/config
~/.vnc/xstartup
~/.vnc/passwd

备份命令:

tar czvf vnc_backup.tar.gz ~/.vnc

恢复时:

tar xzvf vnc_backup.tar.gz -C ~/

✅ x11vnc

x11vnc 通常无 ~/.vnc,备份:

which x11vnc
cat /etc/systemd/system/x11vnc.service 2>/dev/null

常见启动参数:

x11vnc -rfbport 5900 -display :0 -forever -shared

建议备份:

  • 启动脚本
  • systemd service 文件
  • VNC 密码文件(如有)

✅ Ubuntu 自带“远程桌面”(GNOME)

Ubuntu 22.04+ 默认使用 RDP / VNC via gnome-remote-desktop

备份:

dconf dump /org/gnome/remote-desktop/ > gnome_remote_desktop.dconf

恢复:

dconf load /org/gnome/remote-desktop/ < gnome_remote_desktop.dconf

四、完整一键备份脚本(推荐)

#!/bin/bash
BACKUP_DIR=~/vnc_backup_$(date +%F)
mkdir -p $BACKUP_DIR

cp -r ~/.vnc $BACKUP_DIR 2>/dev/null
cp -r /etc/systemd/system/vnc*.service $BACKUP_DIR 2>/dev/null
cp -r /etc/systemd/system/x11vnc.service $BACKUP_DIR 2>/dev/null
dconf dump /org/gnome/remote-desktop/ > $BACKUP_DIR/gnome_remote_desktop.dconf 2>/dev/null

echo "VNC 配置已备份到 $BACKUP_DIR"

五、恢复 VNC 配置(重新安装系统后)

cp -r vnc_backup/.vnc ~/
chmod 600 ~/.vnc/passwd

如涉及 systemd:

sudo cp vncserver@.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl restart vncserver@1

六、常见坑提醒 ⚠️

问题 原因
恢复后无法启动 ~/.vnc/passwd 权限不对
黑屏 xstartup 未备份或桌面环境不匹配
端口冲突 忘记备份自定义端口配置

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

  • ✅ Ubuntu 版本(如 20.04 / 22.04)
  • ✅ 使用的 VNC 名称
  • ✅ 是桌面版还是服务器版

我可以给你一份完全针对你系统的备份方案

0