在 CentOS 上备份 VNC 配置,主要是备份 VNC 服务配置、用户 VNC 配置和启动脚本。下面按常见使用场景给你一个完整、实用的备份方法。
VNC 配置通常位于用户家目录和系统服务目录。
cp -r ~/.vnc ~/vnc_backup
常见内容:
~/.vnc/xstartup —— 启动桌面环境的脚本~/.vnc/passwd —— VNC 密码(加密)~/.vnc/*.pid —— 运行时 PID(可不备份)✅ 推荐完整备份
tar czvf vnc_user_backup.tar.gz ~/.vnc
如果你是通过 systemd 启用的 VNC(如 :1、:2):
cp -r /etc/systemd/system/vncserver@*.service /backup/
或直接查看:
ls /etc/systemd/system/vncserver*
如果是手动配置:
cp /etc/systemd/system/vncserver@.service /backup/
没改 systemd 文件可跳过
cp ~/.vnc/xstartup ~/vnc_backup/xstartup.bak
常见内容示例(GNOME):
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec /etc/X11/xinit/xinitrc
如果 VNC 端口已放行:
cp /etc/firewalld/zones/public.xml ~/vnc_backup/
或导出:
firewall-cmd --list-all > vnc_firewall_backup.txt
#!/bin/bash
BACKUP_DIR=~/vnc_backup_$(date +%F)
mkdir -p $BACKUP_DIR
cp -r ~/.vnc $BACKUP_DIR/
cp /etc/systemd/system/vncserver*.service $BACKUP_DIR/ 2>/dev/null
firewall-cmd --list-all > $BACKUP_DIR/firewall.txt 2>/dev/null
echo "VNC 配置已备份到:$BACKUP_DIR"
执行:
bash backup_vnc.sh
cp -r vnc_backup/.vnc ~/
chmod 600 ~/.vnc/passwd
chmod +x ~/.vnc/xstartup
systemctl daemon-reload
systemctl restart vncserver@:1
| 显示号 | 端口 |
|---|---|
| :1 | 5901 |
| :2 | 5902 |
| :3 | 5903 |
✅ CentOS 版本(7 / 8 / Stream)
✅ VNC 类型(TigerVNC / RealVNC / x11vnc)
✅ 是否使用 GNOME / KDE / XFCE
我可以给你完全针对你环境的备份与恢复方案。