🛠 1. Архивация с
tar📦 Создать архив:
tar -cvzf backup.tar.gz /путь/к/директории
📂 Распаковать архив:
tar -xvzf backup.tar.gz -C /путь/куда/распаковать
🔎 Просмотреть содержимое архива:
tar -tvf backup.tar.gz
📝 Архивация с исключением файлов:
tar --exclude='/путь/к/исключаемой_папке' -cvzf backup.tar.gz /путь/к/директории
🔄 2. Синхронизация с
rsync📤 Копирование файлов с сохранением структуры и прав:
rsync -av /источник/ /назначение/
🌍 Синхронизация по SSH:
rsync -avz -e ssh /источник/ user@host:/назначение/
🧹 Удаление устаревших файлов в целевой папке:
rsync -av --delete /источник/ /назначение/
📄 Исключение файлов:
rsync -av --exclude='*.log' /источник/ /назначение/
⏳ 3. Автоматизация с
cron📅 Редактирование задач:
crontab -e
📌 Примеры:
- Запуск резервного копирования каждый день в 3:00
0 3 * * * tar -cvzf /backup/backup_$(date +\%F).tar.gz /важные_данные
- Автоматическая синхронизация раз в час
0 * * * * rsync -av /данные/ /backup/
📌 Проверка запланированных задач:
crontab -l
🏆 4. Бэкап с
BorgBackup⚡ Инициализация хранилища:
borg init --encryption=repokey /backup/repo
📦 Создание резервной копии:
borg create --stats /backup/repo::backup-$(date +%F) /данные
🛠 Восстановление данных:
borg extract /backup/repo::backup-2024-02-26
📜 Просмотр списка резервных копий:
borg list /backup/repo
🧹 Удаление старых бэкапов (например, старше 7 дней):
borg prune --keep-daily=7 /backup/repo
🔥 Вывод:
-
tar — простая архивация -
rsync — синхронизация данных -
cron — автоматизация -
BorgBackup — мощное решение для резервного копирования @sysadmin1