VDS · Резервные копии и диск

Данные пропали: что делать по шагам

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

Обновлено 23 августа 2026 г.

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

Немедленно: перестаньте писать на диск

Удалённый файл живёт на диске до тех пор, пока его место не занято чем-то новым. Каждая запись — установка пакета, работающий сайт, растущий журнал — уменьшает шансы.

  • Остановите то, что пишет: веб-сервер, базу, обработчики очередей.
  • Не устанавливайте программы восстановления на тот же диск.
  • Не переустанавливайте систему: переустановка уничтожает диск целиком и без возврата.

Если данные важны и копий нет — остановите машину и напишите в поддержку до любых экспериментов.

Разберитесь, что именно случилось

ПризнакЧто этоКуда идти
Файлы удалены командойОбычное удалениеРаздел ниже
«No space left on device»Кончилось место, приложение не смогло записатькончилось место
База не открывается, файлы на местеПовреждение базыкопии баз
Система не грузитсяЗагрузчик или файловая системадиск восстановления
Чужие файлы, незнакомые процессыВозможен взломпризнаки взлома

Если копии есть

Это самый быстрый путь и почти всегда единственный успешный. Восстанавливайте по своей схеме — rsync или restic — и сверяйте не факт распаковки, а содержимое: размер, количество строк, открывается ли база.

restic -r /path/to/repo snapshots
restic -r /path/to/repo restore latest --target /restore

Разворачивайте сначала в отдельный каталог, а не поверх рабочего: копия тоже бывает неполной, и затирать ею остатки — способ потерять оба варианта.

Если копий нет

У нас нет автоматических копий вашей машины и нет снимков состояния. Диск виртуальной машины — это ваш диск: что на нём произошло, то и произошло. Поэтому копии настраиваются в первый же день — что именно копировать.

Что ещё можно попробовать своими силами:

  • Файл ещё открыт процессом. Если программа держит удалённый файл, он доступен через /proc:
    lsof +L1
    cp /proc/<pid>/fd/<n> /root/recovered-file
    
    Это работает только пока процесс жив — не перезапускайте его.
  • Данные в журнале базы. У PostgreSQL и MySQL бывает журнал упреждающей записи, из которого специалист может собрать состояние на момент до аварии. Не запускайте базу в режиме починки наугад — так теряют и журнал.
  • Загрузиться в диск восстановления и снять образ диска на другую машину, прежде чем пробовать инструменты вроде extundelete или photorec. Работать надо с образом, а не с живым диском.

Чего делать нельзя

  • Переустанавливать систему «чтобы начать заново», пока не решено, нужны ли данные.
  • Запускать программы восстановления, которые пишут результат на тот же диск.
  • Чинить файловую систему fsck с автоответом «да» на живом диске без образа.
  • Ждать неделю и потом просить восстановить: чем дольше машина работает, тем меньше остаётся.

Как не повторить

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