proxmox ve 要发挥 pbs 极速去重能力,关键在于数据直传、本地 chunk 缓存、zfs datastore 及严格时间同步:需手动安装 proxmox-backup-client,走本地磁盘直读+增量备份路径,禁用 webui 代理;pbs 端优先用 zfs 创建 datastore 并调优参数;pve 与 pbs 必须 ntp 精确同步,避免 tls 握手卡顿。

Proxmox VE 要真正发挥 Proxmox Backup Server 的「极速去重」能力,关键不在“连得上”,而在于**数据路径不绕路、元数据不卡顿、去重粒度不浪费**。直接用默认配置连 PBS,备份速度可能比 NFS 还慢——这是常见但少被点破的问题。
为什么 backup job 慢?先看 PBS 客户端实际走哪条路
当你在 PVE WebUI 里点“备份 → 存储选 PBS”,背后不是直传数据,而是:pveproxy 先把 VM 磁盘读出来,再通过 HTTPS(https://pbs-ip:8007)转发给 PBS。这个路径会吃掉大量 CPU 和带宽,尤其在高并发或大 VM 场景下。
真正极速的路径是:PVE 主机上的 proxmox-backup-client 直接读取本地磁盘(如 /var/lib/vz/images/100/disk-0.raw),按 chunk 切分、计算指纹、查本地 cache、只上传新块——全程绕过 pveproxy 和 HTTP 封包开销。
- 必须在 PVE 主机上手动安装
proxmox-backup-client(它不随 PVE 默认安装) - 确保 PVE 主机和 PBS 之间使用私有高速网络(比如独立 VLAN 或 10G 直连),避免和管理流量争抢
- 禁用 WebUI 备份入口:不要点“备份箭头”,改用 CLI 触发,否则仍走代理路径
proxmox-backup-client 备份命令怎么写才不丢去重效果
错误示范:proxmox-backup-client backup vm/100@2024-09-30T12:00:00Z --repository root@pbs:backup-store —— 这会强制全量,且没指定 fingerprint cache 路径,每次都要重新扫描 chunk。
正确做法是绑定本地 cache 目录 + 显式启用增量上下文:
- 创建 cache 目录:
mkdir -p /var/lib/proxmox-backup-client/cache - 首次备份加
--create,后续自动增量:proxmox-backup-client backup vm/100@2024-09-30T12:00:00Z --repository root@pbs:backup-store --cache-dir /var/lib/proxmox-backup-client/cache - 务必加上
--verify(校验上传完整性)和--prune(配合 PBS 的 GC 策略) - 若 VM 使用 qcow2,加
--qemu-img参数让 client 调用qemu-img convert原生读取,避免 raw 转换损耗
PBS 端 datastore 配置影响去重速度的关键参数
去重不是“开箱即用”的魔法,它依赖 PBS 后端对 chunk index 的快速查找。默认 ext4 + directory datastore 在 TB 级后明显变慢,因为 index 是文件系统级目录树,而非内存索引。
- 优先用
zfs创建 datastore(PBS 原生支持):zfs create -o recordsize=128k -o compression=lz4 -o atime=off rpool/backup-store,再通过 WebUI 添加为 ZFS 类型 datastore - 避免在 LVM 或软件 RAID 上建 ext4 datastore;若只能用 HDD,务必开启
special vdev(ZFS special device)存 metadata,否则 index 查询会成为 IOPS 瓶颈 - 确认 PBS 的
proxmox-backup-proxy进程内存充足:每 TiB 存储建议至少 1 GiB RAM 预留给 index cache,可通过systemctl show proxmox-backup-proxy | grep MemoryLimit检查
容易被忽略的「极速」断点:时间同步与 TLS 握手
看似无关,但实测中这两个点常导致备份卡在 “connecting” 或 “waiting for server response” 达数分钟:
- PVE 主机和 PBS 必须严格 NTP 同步(误差
- 禁用 TLS 1.0/1.1:在 PBS 的
/etc/proxmox-backup/proxy.cfg中设置ssl-min-version: TLSv1.2,并确保 PVE 主机 OpenSSL 版本 ≥ 1.1.1 - 如果用自签名证书,别只复制
ca.pem到 PVE;要运行proxmox-backup-client cert import /path/to/ca.pem,否则每次连接都 warn 并降级重试











