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. Только после этого резервные копии становятся реальной защитой, а не набором файлов, в которых вы не уверены.

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 0 / 5. Количество оценок: 0

Оценок пока нет. Поставьте оценку первым.

Поделиться: Telegram ВКонтакте