Пошаговая инструкция · Самостоятельная установка
Как установить Proxmox Backup Server и подключить резервные копии
Пошаговая инструкция для самостоятельной установки. Установим Proxmox Backup Server на отдельную машину, подготовим диск для копий и подключим Proxmox VE. Небольшие шаги проведут от первого входа до резервирования, проверки целостности и восстановления отдельной VM.
Что нужно для независимой резервной копии #
Развернём отдельный Proxmox Backup Server из официального ISO. В него уже входит Debian: Ubuntu на эту машину не устанавливайте. PBS хранит копии, а Proxmox VE отправляет их. Для первой проверки нужен уже работающий PVE с небольшой тестовой VM.
Подготовьте пустой системный диск, отдельный пустой диск для копий, постоянный IP и доступ к iKVM/IPMI или локальному монитору. Установщик и создание хранилища сотрут выбранные диски. Если PBS размещён на дисках того же PVE, отказ может уничтожить и VM, и копии; выберите независимое место.
У провайдера получите IP, префикс сети, шлюз и DNS. Пример имени — pbs.example.com: далее заменяйте его своим. TCP 8007 разрешите от PVE и административной сети, SSH TCP 22 — от администратора. Интернет-доступ из любой сети PBS не требуется.
Все команды PBS выполняйте от root в его консоли или Administration → Shell. Здесь не нужны sudo, Docker, Nginx и Certbot. Команды и действия в PVE будут отмечены отдельно. Размер дисков и память выберите по руководству по серверу PBS.
Шаг 1. Скачайте официальный установочный образ #
На рабочем компьютере откройте загрузки PBS и скачайте ISO 4.2-1. Это образ для x86-64 сервера Intel/AMD.
Сохраните файл в известную папку и оставьте страницу с SHA256 открытой: в следующем шаге проверим скачивание.
Должен появиться proxmox-backup-server_4.2-1.iso. Не подключайте к серверу файл, который ещё загружается.
Шаг 2. Сравните контрольную сумму ISO #
Откройте терминал рабочего компьютера в папке с ISO. На Linux выполните команду ниже. На Windows используйте Get-FileHash .\proxmox-backup-server_4.2-1.iso -Algorithm SHA256, на macOS — shasum -a 256 proxmox-backup-server_4.2-1.iso.
sha256sum proxmox-backup-server_4.2-1.isoДля ISO 4.2-1 ожидается 2fb299deac3929253712c9c3dfc9237edbe70af83c8848467616b771a1d5453e. Если хоть один символ отличается, скачайте образ заново. Для другого релиза берите его собственную сумму.
Шаг 3. Подключите ISO и откройте установщик #
В удалённой консоли PBS подключите ISO через virtual media и выберите загрузку с него. При локальной установке запишите образ через Etcher или Rufus в режиме DD на флешку, которую разрешено стереть.
Выберите Install Proxmox Backup Server (Graphical). Если графика не работает, используйте консольный установщик. Прочитайте и примите лицензию.
Откроется экран выбора диска. Если загрузилась прежняя ОС, исправьте выбор загрузочного носителя.
Шаг 4. Выберите только системный диск #
Сверьте модель и объём Target Harddisk с подготовленным системным диском. В базовом примере оставьте ext4. Диск для копий пока не выбирайте: подготовим его отдельно в панели.
Если системных дисков два и выбран ZFS mirror, оба должны иметь прямой доступ без аппаратного RAID. Не продолжайте, пока не уверены, какие диски будут удалены.
Целевой диск пуст или его данные уже сохранены. Установщик не сохраняет прежние разделы выбранного устройства.
Шаг 5. Задайте время и пароль администратора #
Выберите страну, часовой пояс и раскладку. На следующем экране задайте уникальный длинный пароль root и рабочий email для уведомлений.
Сохраните пароль вне нового PBS. Это учётная запись для первого входа; токен PVE создадим отдельно и не будем заменять его root-паролем.
Пароль сохранён, раскладка понятна, почта написана верно.
Шаг 6. Заполните постоянные сетевые параметры #
Выберите подключённый интерфейс управления. Задайте полное имя pbs.example.com со своим доменом, IP с префиксом, шлюз и DNS по данным провайдера.
Имя должно разрешаться в адрес PBS. PVE должен иметь маршрут к этому адресу и доступ к TCP 8007. Не используйте адрес PVE для PBS: это разные машины.
Все значения совпадают с выданными провайдером. Ошибка префикса или шлюза может оставить панель недоступной.
Шаг 7. Завершите установку и перезагрузите сервер #
На итоговом экране сверьте диски и сеть, затем нажмите Install. Дождитесь завершения без выключения питания.
Отключите ISO или извлеките флешку и перезагрузитесь. В консоли загрузившегося PBS должен появиться адрес веб-панели.
После перезагрузки загружается PBS с диска. Если снова открылся установщик, уберите ISO из порядка загрузки.
Шаг 8. Войдите в панель и сохраните TLS-отпечаток #
На рабочем компьютере откройте https://pbs.example.com:8007 со своим доменом или https://IP_PBS:8007. Войдите как root, realm Linux PAM, с сохранённым паролем.
Сертификат сначала самоподписанный. Получите сведения о нём через доверенную консоль PBS командой ниже и сверьте отпечаток с браузером. Сохраните fingerprint: его потребуется передать PVE.
proxmox-backup-manager cert infoПанель показывает Summary сервера; отпечаток сертификата записан. Не подтверждайте произвольный сертификат при несовпадении.
Шаг 9. Настройте источник обновлений #
Откройте Administration → Repositories. С подпиской оставьте подходящий Enterprise; без неё отключите недоступный Enterprise и добавьте No-Subscription. Не включайте Test для обычного сервера копий.
В Administration → Updates обновите список пакетов и установите доступные обновления. Если требуется перезагрузка после ядра, выполните её сейчас, пока заданий нет.
Обновление закончено без ошибок репозитория, панель снова доступна. Часовой пояс и время сервера верны.
Шаг 10. Подготовьте пустой диск для копий #
В Administration → Storage/Disks сверяйте не только имя /dev/sdb, но и размер, модель и серийный номер. Выберите именно отдельный пустой диск.
Для базового варианта в Directory создайте файловую систему ext4 на этом диске с именем vm-backups. Если предлагается автоматическое добавление datastore, отключите его: сделаем этот шаг явно. Запишите итоговый путь монтирования, обычно /mnt/datastore/vm-backups.
Если используете два диска с прямым доступом, вместо Directory можно создать ZFS mirror через ZFS. Это другой вариант подготовки; не выполняйте оба на одних дисках. Любой из этих способов форматирует выбранные устройства.
Задание создания файловой системы закончено со статусом TASK OK. Новый каталог смонтирован с диска для копий. Никогда не форматируйте диск с единственной существующей копией.
Шаг 11. Создайте datastore на подготовленном диске #
В боковом меню Datastore нажмите Add Datastore. Name задайте vm-backups, Backing Path — фактический путь из предыдущего шага, например /mnt/datastore/vm-backups. Не подставляйте пример, если ваше хранилище смонтировано иначе.
Datastore — место, где PBS создаёт блоки и снимки резервных копий. На этом этапе можно оставить задания обслуживания без расписания: настроим их после первой успешной копии. Если мастер диска уже создал datastore, проверьте его поля и второй не создавайте.
proxmox-backup-manager datastore list
findmnt -T /mnt/datastore/vm-backups
df -h /mnt/datastore/vm-backupsВ списке есть vm-backups. findmnt показывает отдельную подготовленную файловую систему, а df — её размер. Если путь попал на системный диск, исправьте хранилище до первой копии.
Шаг 12. Создайте отдельного пользователя для PVE #
Откройте Configuration → Access Control → User Management → Add. Создайте pve-backup в realm pbs; полное имя будет pve-backup@pbs. Назовите учётную запись так, чтобы было понятно, какой узел ею пользуется.
Новый пользователь ещё не имеет прав. Он не должен быть полным администратором PBS: для копий выдадим доступ только к одному datastore.
В списке появился pve-backup@pbs. Realm pam для этого примера не выбирайте: он связан с системными Linux-пользователями.
Шаг 13. Выпустите токен для подключения PVE #
В разделе API Tokens создайте токен пользователя pve-backup@pbs с именем pve1. Сохраните его полный ID pve-backup@pbs!pve1 и показанный секрет в менеджере паролей.
ID обозначает, чей это доступ, а секрет подтверждает его. Секрет будет показан один раз. Потерянный секрет заменяют новым токеном; root-пароль для обхода этой проблемы не используйте.
Вы сохранили два значения: ID и секрет. Один ID без секрета подключить PVE не позволит.
Шаг 14. Выдайте права пользователю и токену #
В Configuration → Access Control → Permissions добавьте роль DatastoreBackup пользователю pve-backup@pbs на пути /datastore/vm-backups. Затем добавьте такую же роль его токену pve-backup@pbs!pve1 на том же пути.
Права токена ограничены правами пользователя, поэтому нужны обе записи. DatastoreBackup позволяет создавать и восстанавливать собственные копии; удаление старых снимков будем выполнять заданиями PBS.
В Permissions видны обе записи с правильным путём и ролью. Путь ACL — /datastore/vm-backups, а не путь диска /mnt/datastore/vm-backups.
Шаг 15. Добавьте PBS в Proxmox VE #
Теперь откройте панель именно Proxmox VE. В Datacenter → Storage → Add → Proxmox Backup Server задайте ID, например pbs-main, Server — адрес PBS, Datastore — vm-backups.
В Username вставьте ID токена pve-backup@pbs!pve1, в Password — его секрет, в Fingerprint — сверенный отпечаток PBS. Сохраните подключение.
Хранилище доступно узлу PVE без ошибок authentication. Если нет, проверьте маршрут к TCP 8007, обе ACL-записи, datastore и fingerprint.
Шаг 16. Отправьте первую небольшую копию #
В PVE выберите тестовую VM → Backup → Backup now. Укажите хранилище pbs-main и режим Snapshot, запустите операцию. Рабочее прежнее резервирование пока не отменяйте.
Откройте журнал задания и дождитесь завершения. Затем в PBS откройте vm-backups → Content и найдите группу этой VM и свежий снимок.
В PVE задача завершилась TASK OK, в PBS виден снимок с текущей датой. Если PVE сообщает об успехе, но смотрите пустой datastore, проверьте выбранное хранилище и namespace.
Шаг 17. Проверьте сохранённый снимок через Verify #
В PBS выберите полученный снимок в Content и запустите Verify. Эта операция читает сохранённые данные и проверяет их целостность.
Дождитесь результата в журнале. Verify проверяет хранилище, но не запускает вашу Ubuntu и приложение: это сделаем следующим шагом.
Проверка завершена без ошибок. Ошибки чтения или checksum сначала расследуйте по состоянию дисков и журналу; такой снимок ещё нельзя считать надёжным.
Шаг 18. Восстановите VM под другим ID #
В PVE откройте Content подключённого PBS либо Backup исходной VM. Выберите снимок → Restore, задайте другой свободный VM ID и хранилище для восстановленного диска.
До первого запуска отключите сетевой адаптер тестовой VM в Hardware. Запустите её и войдите через Console. Проверьте файлы и приложение, если оно уже было установлено. Сеть отключена, чтобы второй экземпляр не повторил IP и рабочие действия первого.
Восстановленная VM загружается, нужные файлы и данные доступны. Запишите время восстановления. Не запускайте этот тест поверх работающей исходной VM.
Шаг 19. Создайте регулярное задание backup в PVE #
В PVE откройте Datacenter → Backup → Add. Выберите VM, PBS-хранилище и время запуска. Для начала подойдёт ежедневная копия в период низкой нагрузки; частоту подберите по допустимой потере данных.
Настройте уведомления об ошибках и проверьте их доставку. На первом плановом запуске снова проверьте журнал и дату снимка в PBS.
Задание включено, расписание понятно, первый автоматический снимок действительно создан. Успех ручного задания не подтверждает работу расписания.
Шаг 20. Определите, какие старые копии сохранять #
В PBS для datastore настройте Prune Jobs и срок хранения. Учебный старт — 7 ежедневных и 4 еженедельных снимка; для рабочих данных согласуйте нужную глубину восстановления.
Prune удаляет устаревшие снимки по правилам хранения. Сначала просмотрите, какие точки восстановления останутся, и только затем запускайте очистку. Это не то же самое, что освобождение всех занятых блоков на диске.
Сохраняются требуемые контрольные точки. Для тестового задания с одним снимком не выбирайте политику, которая удалит единственную проверенную копию.
Шаг 21. Назначьте сборку неиспользуемых блоков #
В datastore настройте Garbage Collection отдельно от времени backup и Verify. GC освобождает блоки, на которые больше не ссылаются сохраняемые снимки.
Сразу после Prune свободное место может не измениться: действует защитный период GC. Не удаляйте вручную файлы из .chunks ради ускорения очистки — этим можно повредить нужные копии.
Первое GC-задание завершается без ошибок. Следите за свободным объёмом заранее: полностью заполненный datastore мешает создавать новые копии.
Шаг 22. Назначьте регулярную проверку целостности #
В datastore добавьте Verify Job. Укажите расписание, которое не пересекается с тяжёлыми backup и GC; частоту и повторную проверку старых данных выберите с учётом объёма.
Проверьте первый плановый запуск и уведомления. Периодически повторяйте настоящее восстановление VM: автоматическая Verify не заменяет его.
В журнале есть успешный Verify Job, а восстановление проверено отдельно. Сохраните вне PBS /etc/proxmox-backup и сведения о доступе; данные datastore резервируются отдельно.
Следующий этап: шифрование и вторая копия #
Если включаете клиентское шифрование на стороне PVE, выгрузите ключ в независимое защищённое место и повторите восстановление с этой копией ключа. PBS хранит зашифрованные данные, но пароль администратора PBS не заменяет ключ.
Для второй независимой копии подготовьте другой PBS и настройте Remotes и Sync Jobs по официальной документации. Проверьте параметры удаления: ошибка первого сервера не должна автоматически уничтожить все старые снимки второго.
После синхронизации проведите восстановление именно со второго сервера. Перед обновлениями PBS прочитайте release notes и проверьте такую копию; не совмещайте обновление с backup или GC.
Где искать причину ошибки #
Ошибка authorization: сверьте realm pbs, полный ID токена, секрет, обе записи ACL и владельца backup-группы. Ошибка fingerprint: получите отпечаток в доверенной консоли и выясните, почему сертификат изменился.
Datastore недоступен: проверьте монтирование, состояние дисков и свободное место. Команды ниже выполняйте от root на PBS. Не создавайте новый пустой каталог поверх отсутствующего диска и не форматируйте накопитель с копиями.
После исправления повторите небольшой backup, Verify и восстановление. Эти три действия подтверждают работоспособность всей цепочки.
journalctl -u proxmox-backup -u proxmox-backup-proxy --since "30 minutes ago" --no-pager
proxmox-backup-manager datastore list
proxmox-backup-manager disk list
df -h