Proxmox Backup Server (PBS) — специализированное решение для резервного копирования виртуальных машин, контейнеров и файлов. Его сильные стороны — дедупликация на уровне блоков, проверка целостности и шифрование на стороне клиента. В отличие от обычного каталога с tar-архивами, PBS хранит данные в собственном хранилище и умеет удалять только те блоки, на которые больше никто не ссылается. Ниже — установка, создание datastore, подключение к Proxmox VE, политика хранения и восстановление.
Установка и базовые проверки
PBS ставят с официального ISO или из репозитория на Debian. Для продуктивной системы лучше отдельный сервер с локальным диском: сетевые хранилища требуют аккуратной настройки. После установки проверьте версии компонентов и состояние служб.
proxmox-backup-manager versions
systemctl status proxmox-backup-proxy
systemctl status proxmox-backup
df -h /mnt/datastore
Datastore хранит чанки, индексы и метаданные. Создавайте его на отдельном разделе: копии быстро занимают место, и переполнение корня ломает сервис.
mkdir -p /mnt/datastore/store1
proxmox-backup-manager datastore create store1 /mnt/datastore/store1
proxmox-backup-manager datastore list
Создайте отдельного пользователя и API-токен. Не используйте root: у токена можно ограничить права и отозвать его без смены пароля.
proxmox-backup-manager user create backup@pbs --password 'StrongPass-2026'
proxmox-backup-manager user generate-token backup@pbs automation
proxmox-backup-manager acl update /datastore/store1 DatastoreBackup --auth-id backup@pbs
proxmox-backup-manager cert info
Команда cert info показывает отпечаток сертификата. Он понадобится при подключении хранилища к Proxmox VE, чтобы клиент проверил подлинность сервера и не отправил данные на подменённый узел.
Как работает дедупликация
PBS разбивает поток на чанки, вычисляет хеш и сохраняет каждый уникальный блок один раз. Индексы описывают, из каких чанков состоит копия. Поэтому повторные копии той же машины занимают мало места: меняются лишь изменённые блоки.
Дедупликация работает в пределах datastore и может использоваться разными клиентами. Но данные, зашифрованные разными ключами, выглядят для сервера как разные, поэтому межклиентская дедупликация с ними не работает.
- Чанки хранятся отдельно от индексов и метаданных.
- Prune удаляет ссылки на снапшоты, но не сами блоки сразу.
- Garbage collection освобождает чанки, на которые не осталось ссылок.
- Verify перечитывает данные и сверяет контрольные суммы.
После изменения политики хранения дождитесь prune и garbage collection, иначе место освободится не сразу. Не запускайте GC одновременно с интенсивной записью.
Подключение к Proxmox VE
В Proxmox VE хранилище PBS добавляется как отдельный тип. Укажите адрес, datastore, пользователя или токен и отпечаток сертификата.
pvesm add pbs pbs-store --server 10.0.0.5 --datastore store1
pvesm set pbs-store --username backup@pbs --password 'секрет' \
--fingerprint AA:BB:CC:DD:EE:FF:00:11:22:33:44:55:66:77:88:99
pvesm status
vzdump 100 --storage pbs-store --mode snapshot --prune-backups keep-last=7
Режим snapshot создаёт копию работающей машины без остановки. Для баз данных этого мало: приложение нужно остановить или сделать собственный дамп. Параметр --prune-backups задаёт политику хранения.
Политика описывается правилами keep-last, keep-daily, keep-weekly, keep-monthly и keep-yearly. Например, семь последних, семь дневных, четыре недельных и шесть месячных копий покрывают небольшой офис. PBS оставляет ближайший снапшот для каждого периода.
Ручное копирование файлов и шифрование
Клиент PBS сохраняет и отдельные каталоги в формате pxar. Репозиторий задаётся как пользователь@realm@сервер:datastore, а пароль передаётся через переменную окружения, чтобы не светить его в списке процессов.
export PBS_REPOSITORY='backup@pbs@10.0.0.5:store1'
export PBS_PASSWORD='секрет'
proxmox-backup-client backup etc.pxar:/etc root.pxar:/root \
--repository "$PBS_REPOSITORY"
proxmox-backup-client snapshot list --repository "$PBS_REPOSITORY"
Для шифрования создайте ключ и сохраните его вне сервера. Потеря ключа означает потерю данных: сервер хранит чанки зашифрованными, и восстановить их без ключа не получится даже при наличии всех файлов.
proxmox-backup-client key create /root/pbs-backup.key
proxmox-backup-client backup etc.pxar:/etc \
--keyfile /root/pbs-backup.key --repository "$PBS_REPOSITORY"
proxmox-backup-client restore 'host/files/2026-11-05T02:00:00Z' etc.pxar /mnt/restore
Ключ стоит хранить в менеджере секретов и в офлайн-копии. Не держите единственный экземпляр на том же сервере, который резервируете: при пожаре или краже вы потеряете и данные, и ключ.
Восстановление и проверка
Восстановление виртуальной машины в Proxmox VE выполняется из интерфейса: выберите снапшот, нажмите «Восстановить» и укажите новый VMID, если не хотите перезаписывать исходную машину. Для проверки лучше восстанавливать под другим идентификатором и запускать копию в изолированной сети, чтобы не возникло конфликта IP и имён.
Файловое восстановление из pxar можно сделать в отдельный каталог, не затрагивая рабочие данные. Сначала посмотрите список снапшотов, затем восстановите нужный архив и сравните содержимое с оригиналом.
proxmox-backup-client snapshot list --repository "$PBS_REPOSITORY"
proxmox-backup-client restore 'host/files/2026-11-05T02:00:00Z' etc.pxar /mnt/restore
diff -r /etc /mnt/restore | head
proxmox-backup-manager verify store1
Команда verify перечитывает данные и проверяет целостность. Регулярная проверка важнее, чем красивая статистика дедупликации: повреждённый чанк может обнаружиться только при чтении. Настройте расписание verify в интерфейсе и следите за журналом.
Обслуживание и мониторинг
После удаления старых снапшотов запускайте сборку мусора. Она освобождает место, но может работать долго и нагружать диск, поэтому планируйте её на ночь. Следите за свободным местом: при заполнении datastore новые копии перестанут создаваться, а уже существующие могут стать недоступными для записи.
proxmox-backup-manager garbage-collection start store1
journalctl -u proxmox-backup-proxy --since today
du -sh /mnt/datastore/store1
df -h /mnt/datastore/store1
- Проверяйте журнал после каждого обновления PBS и Proxmox VE.
- Держите копию конфигурации datastore и ключей отдельно от сервера.
- Следите за временем: расхождение часов мешает аутентификации и синхронизации.
- Тестируйте восстановление не реже раза в квартал.
- Для второй площадки используйте sync или удалённое хранилище, а не ручное копирование каталогов.
Не путайте prune и удаление файлов вручную. Ручное удаление содержимого datastore ломает индексы и может привести к потере всех копий. Все операции выполняйте через штатные команды и интерфейс.
Итог
Proxmox Backup Server даёт то, чего не хватает простому tar: блочную дедупликацию, проверку целостности, шифрование и удобное восстановление виртуальных машин. Создайте отдельный datastore, заведите пользователя с ограниченными правами, подключите хранилище к Proxmox VE по отпечатку сертификата и настройте политику хранения. Затем обязательно проверьте восстановление на тестовой машине и настройте регулярный verify. Только после этого резервные копии становятся реальной защитой, а не набором файлов, в которых вы не уверены.