- Home »

Как сделать быстрый и надежный VPS-хранилище с BorgBackup и автоматическими снапшотами: гайд для тех, кто не любит терять данные
Всем привет! Сегодня разберём, как превратить обычный VPS в мощное и удобное хранилище для резервных копий с помощью BorgBackup и автоматических снапшотов. Если вы ищете практичные советы, быстрые решения и не хотите читать занудные мануалы — вы попали по адресу.
Почему вообще стоит заморачиваться с бэкапами на VPS?
Всё просто: данные теряются. Жёсткие диски умирают, облачные сервисы могут подвести, а иногда и сам себе враг — случайно удалил не тот файл, и привет. VPS — это не только сервер для сайтов, но и отличная площадка для хранения резервных копий. Особенно если вы хотите контролировать свои данные, а не доверять их каким-то абстрактным облакам.
- VPS — быстро, гибко, доступно из любой точки мира
- Можно настроить под себя: шифрование, дедупликация, автоматизация
- Бэкапы — это не только про восстановление после катастрофы, но и про спокойствие
Если вы ещё не выбрали VPS — вот ссылка для заказа. А теперь — к сути!
Что такое BorgBackup и почему это круто?
BorgBackup (borgbackup.org) — это современный инструмент для резервного копирования, который:
- Делает инкрементальные бэкапы (копирует только изменения)
- Дедуплицирует данные (не хранит одинаковые куски по сто раз)
- Шифрует архивы (ваши данные — только ваши!)
- Умеет работать по SSH (идеально для VPS)
- Прост в автоматизации (cron, systemd timers, скрипты)
В отличие от rsync, tar и прочих дедовских методов, Borg реально экономит место и время. А ещё у него есть крутая комьюнити и понятная документация.
Как это работает? Алгоритмы и структура
Принцип работы BorgBackup
- Вы создаёте репозиторий на VPS (или локально)
- Каждый бэкап — это “снапшот” состояния файлов на момент запуска
- Данные разбиваются на блоки, одинаковые блоки не дублируются
- Всё шифруется (по желанию)
- Восстановить можно как отдельные файлы, так и весь архив
Структура хранения
- Один репозиторий = много архивов (снапшотов)
- Каждый архив — это состояние файловой системы на определённую дату
- Можно хранить хоть сотни архивов, место будет занимать только разница между ними
Как развернуть BorgBackup на VPS: пошаговый мануал
1. Установка BorgBackup
На большинстве дистрибутивов всё просто:
# Для Ubuntu/Debian
sudo apt update
sudo apt install borgbackup
# Для CentOS/RHEL
sudo dnf install borgbackup
# Для Arch Linux
sudo pacman -S borg
Проверьте версию:
borg --version
2. Настройка SSH-доступа к VPS
Лучше всего использовать ключи, а не пароли:
# На локальной машине
ssh-keygen -t ed25519
ssh-copy-id user@your-vps-ip
Проверьте, что вход по ключу работает:
ssh user@your-vps-ip
3. Инициализация репозитория на VPS
# На VPS (или через SSH)
borg init --encryption=repokey /path/to/backup/repo
# Или удалённо:
borg init --encryption=repokey-blake2 user@your-vps-ip:/home/user/borg-repo
- –encryption=repokey — шифрует архивы, ключ хранится в конфиге на клиенте
- Можно выбрать –encryption=none, если шифрование не нужно
4. Создание первого бэкапа
borg create --stats --progress user@your-vps-ip:/home/user/borg-repo::first-backup /home/youruser/data
- ::first-backup — имя архива (можно добавить дату:
::backup-$(date +%Y-%m-%d)
) - /home/youruser/data — что бэкапим
5. Автоматизация: скрипт и cron
Создайте скрипт backup.sh
:
#!/bin/bash
export BORG_PASSPHRASE='your_passphrase'
borg create --stats --progress user@your-vps-ip:/home/user/borg-repo::backup-$(date +%Y-%m-%d_%H-%M) /home/youruser/data
borg prune -v --keep-daily=7 --keep-weekly=4 --keep-monthly=6 user@your-vps-ip:/home/user/borg-repo
- prune — удаляет старые архивы по заданной политике
Добавьте в crontab -e
:
0 2 * * * /home/youruser/backup.sh >> /home/youruser/backup.log 2>&1
Теперь бэкапы будут делаться автоматически каждую ночь.
6. Восстановление данных
# Список архивов
borg list user@your-vps-ip:/home/user/borg-repo
# Восстановить всё
borg extract user@your-vps-ip:/home/user/borg-repo::backup-2024-06-01
# Восстановить только один файл/папку
borg extract user@your-vps-ip:/home/user/borg-repo::backup-2024-06-01 home/youruser/data/important.txt
Автоматические снапшоты на самом VPS
Если вы хотите делать снапшоты не только данных, но и всей системы VPS — используйте LVM или файловые системы с поддержкой снапшотов (например, Btrfs, ZFS).
- LVM: позволяет делать моментальные копии разделов
- Btrfs/ZFS: умеют делать снапшоты на уровне файловой системы
Пример для LVM:
lvcreate --size 1G --snapshot --name root_snap /dev/vg0/root
# Монтируем снапшот
mount /dev/vg0/root_snap /mnt/snap
# Копируем нужные файлы или делаем бэкап borg'ом
borg create /mnt/borg-repo::snap-$(date +%Y-%m-%d) /mnt/snap
# Удаляем снапшот после бэкапа
umount /mnt/snap
lvremove /dev/vg0/root_snap
Позитивные и негативные кейсы
Позитивный кейс
- Пользователь настроил borg на VPS, автоматизировал бэкапы через cron
- Через полгода случайно удалил важный проект
- Восстановил за 5 минут нужную папку из архива — никаких слёз и паники
Негативный кейс
- Пользователь не тестировал восстановление, не записал passphrase
- Диск VPS умер, а ключа для расшифровки нет — архивы бесполезны
- Вывод: всегда тестируйте восстановление и храните ключи в надёжном месте!
Частые ошибки и мифы
- Ошибка: “Я сделал бэкап — теперь можно не париться”
Реальность: Бэкап без теста восстановления — это иллюзия безопасности. - Ошибка: “Borg слишком сложный, лучше rsync”
Реальность: Borg проще, чем кажется, и реально экономит место/трафик. - Миф: “Шифрование не нужно, VPS и так мой”
Реальность: VPS — это чужой сервер, шифруйте всегда! - Ошибка: “Храню passphrase на том же VPS”
Реальность: Ключи и пароли должны быть вне VPS, иначе при взломе — всё пропало.
Похожие решения и альтернативы
- Restic — похожий по духу инструмент, чуть проще, но с меньшей гибкостью
- Duplicity — поддерживает разные бэкенды, но медленнее на больших объёмах
- rsync — классика, но без дедупликации и шифрования
- ZFS — файловая система с бэкапами и снапшотами “из коробки”
Заключение: почему стоит выбрать BorgBackup на VPS?
Если вам нужен быстрый, надёжный и гибкий способ хранить резервные копии — BorgBackup на VPS это то, что нужно. Вы контролируете свои данные, экономите место, автоматизируете процесс и можете спать спокойно. Главное — не забывайте тестировать восстановление и хранить ключи отдельно!
- Устанавливается за 10 минут
- Работает быстро, не грузит сервер
- Легко масштабируется (можно бэкапить хоть с десятка машин)
- Открытый исходный код, активная поддержка
Где взять VPS? Вот ссылка для заказа. А если остались вопросы — смело гуглите официальную документацию или пишите в комменты!
Удачных бэкапов и надёжных серверов!
В этой статье собрана информация и материалы из различных интернет-источников. Мы признаем и ценим работу всех оригинальных авторов, издателей и веб-сайтов. Несмотря на то, что были приложены все усилия для надлежащего указания исходного материала, любая непреднамеренная оплошность или упущение не являются нарушением авторских прав. Все упомянутые товарные знаки, логотипы и изображения являются собственностью соответствующих владельцев. Если вы считаете, что какой-либо контент, использованный в этой статье, нарушает ваши авторские права, немедленно свяжитесь с нами для рассмотрения и принятия оперативных мер.
Данная статья предназначена исключительно для ознакомительных и образовательных целей и не ущемляет права правообладателей. Если какой-либо материал, защищенный авторским правом, был использован без должного упоминания или с нарушением законов об авторском праве, это непреднамеренно, и мы исправим это незамедлительно после уведомления. Обратите внимание, что переиздание, распространение или воспроизведение части или всего содержимого в любой форме запрещено без письменного разрешения автора и владельца веб-сайта. Для получения разрешений или дополнительных запросов, пожалуйста, свяжитесь с нами.