Comments 14
Сорри за оффтоп, и ни в коем случае не пытаюьсь никого оскорбить, но всегда было интересно -- почему люди, способные написать с нуля систему резервного копирования, продолжают работать в бюджетной организации, в которой ни на что нет денег?)
Проблема всех этих самописных решений в том, что в них никто не разбирается кроме их создателя. Когда он по какой-то причине уйдет, новому работнику придется тратить лишние силы либо на то, чтобы разобраться что там понаписано либо заменить все это на что-то более стандартное и популярное.
Код системы занимает две страницы текста, без комментариев. Разобраться в нем, это на полчаса времени. Это работает и бесплатно.
Это работает и бесплатно
Borg Backup тоже бесплатный, плюс имеет дополнительные фичи, типа дедупликации. Для Windows такой же бесплатный UrBackup. Значительную часть можно бэкапить на уровне гипервизора.
тут должен быть кусок кода copyFile,но криворукие программисты хабра зафакали вставку из буфера на мозиле.
1. что произойдет, если при копировании файла будет ошибка(например ляжет сеть)?
2. надо добавить тестирование нового архива, а в идеале, всех архивов.
надо добавить на видном месте "на диске осталось Х свободного места" и пищалку "места меньше У" и "диск старше двух лет: меняй коньки на санки".
А в остальном, мне нравится.
Про проблему - если во время копирования не хватит места, конечно знаю, тут моя недоработка, которую я исправлю. Пока реализовано так. Информация об оставшемся месте выдается в лог и почту.
Если сеть ляжет во время резервирования, то или ошибка вылетит или по размеру копии пойму, о том что не так. Здесь сценариев для развития системы еще очень много.
Пока это самый простейший скрипт.
Если файл порвётся небольшой, ничего вы не поймете. Более того, он не переархивируется в следующих инкрементальных бакапах
Ещё про развитие.. Как то я попросил ИИ улучшить мой скрипт "gzip *.log". Через 5 итераций улучшений, на полном автомате, у меня был скрипт на 200 строк, с проверками всего на всё, с параллельным бэкапированием и кучей плюшек о которых я и не подозревал. Я так и пользуюсь однострочником..
тестирование архива сделать в данном случае легко, 7zip это умеет из "коробки", просто добавить еще одну строку вызова после упаковки с аргументами для теста
Почему не restic?
Когда денег нет, но мы держимся. Резервное копирование на Python
Я не стал читать всё это до конца, но есть одно маленькое соображение про 7zip. На серверах у меня он больше не используется, после того как он во время бэкапа успешно занял всю память под словарь.
Когда денег нет, но мы держимся. Резервное копирование на Python