almcreate Авторский IT-блог

Делай бэкап на тот же диск, где лежит проект

Две папки, один накопитель и удивительно согласованная судьба.

Александр Морозов · 10 сен 2026 · 3 мин чтения
Два миниатюрных архива на одном повреждённом жёстком диске под тёплым светом лампы
AI-иллюстрацияalmcreate

На сервере есть папка с проектом. Рядом — папка backups. В ней аккуратные архивы по датам. Ночной скрипт отрабатывает, размер файлов растёт, в отчёте зелёная галочка. Можно выдохнуть: теперь у нас бэкапы.

Особенно удобно, что всё лежит на одном диске. Не нужно возиться с доступами к другому хранилищу, оплачивать лишнее место и ждать передачу по сети. Путь короткий. Почти семейный.

Я бы на этом месте задал один неприятный вопрос: что именно должно сломаться, чтобы мы воспользовались копией? От ответа зависит, сделали мы резервирование или просто навели порядок в каталогах.

Пусть оригинал и копия держатся вместе

Представим вполне будничную сцену. Накопитель перестал определяться. Сайт недоступен, база не стартует, человек за терминалом вспоминает про ночной архив. Отлично, сейчас восстановим.

Осталось прочитать его с накопителя, который перестал определяться.

Диск ничего не знает о наших названиях папок. Для него project и backups — соседние данные с одинаковыми шансами пережить физическую неисправность. Переименование второго каталога в backups_reliable не добавляет независимости.

Можно пойти дальше и выделить под копии отдельный раздел того же диска. В файловом менеджере он будет выглядеть самостоятельнее. Аппаратной поломке это впечатление передать не получится.

Зато от случайной правки спасёт

И вот здесь сарказм стоит притормозить. Локальный архив действительно полезен. Удалил нужный файл, неудачно обновил конфигурацию, захотел быстро сравнить состояние до изменения — копия под рукой экономит время.

Ошибка начинается в тот момент, когда эту удобную промежуточную копию назначают всей стратегией восстановления. Она помогает против части неприятностей. Смерть общего диска в эту часть не входит.

Есть и менее эффектный сценарий. Архивы исправно копятся, свободное место заканчивается, база больше не может нормально писать. Система резервирования сама помогает остановить проект. Поэтому срок хранения и контроль свободного места нужны даже самому скромному ночному скрипту.

«Копия существует» и «после аварии у нас останется копия» — два разных утверждения.

Другой диск — уже разговор, но ещё не вся история

Допустим, мы поставили второй накопитель. Теперь отказ первого не обязан уничтожить оба набора данных. Это реальное улучшение. Но оба диска всё ещё находятся в одном сервере и доступны одной системе.

Потеря машины целиком или доступ злоумышленника с достаточными правами способны задеть оба. Мне поэтому важнее список общих причин отказа, чем количество иконок дисков в панели.

Рабочая схема начинается с отдельного места хранения. Для важного проекта нужна копия за пределами этой машины, с продуманными правами удаления и историей версий. Доступ приложения к данным не должен автоматически давать возможность стереть все резервные поколения. Конкретный набор хранилищ выбирается под цену потери данных, а не под красоту схемы.

При этом скопировать живой каталог базы как обычную папку — ещё не значит получить согласованную базу. Для неё нужен подходящий способ резервирования; для загруженных файлов — понятная связь с состоянием данных. Иначе после восстановления записи о вложениях будут, а самих вложений не окажется.

Проверка, которую неудобно подделать галочкой

Я бы начал с простого упражнения: представить, что исходный сервер недоступен полностью. Есть новая машина. Где взять копию, ключи для расшифровки и инструкцию? Сколько последних изменений потеряется? Через какое время откроется сайт?

Потом действительно восстановить проект в отдельном окружении. Проверить вход, несколько записей, изображения и важную операцию. Не ограничиваться тем, что архив распаковался без ошибки.

Локальную копию после этого можно оставить — она удобная. Просто у неё появится правильная роль. А папка backups на единственном диске перестанет быть обещанием, которое этот диск никогда не давал.

#антипаттерны #production #бэкапы #восстановление

Соседние рубрики