SSD · REDSER BLOG

TRIM в SSD и восстановление данных

TRIM сообщает контроллеру SSD, что определенные LBA больше не нужны. Дальше firmware может использовать эту информацию при garbage collection, поэтому после Delete нельзя рассчитывать на правила старого HDD.

TRIM — это уведомление от хоста: определенные логические блоки можно считать ненужными. Controller сам управляет последующей внутренней очисткой. Поэтому нельзя свести результат к фразе «стерлось мгновенно», но и обещать, что старые данные обязательно останутся, тоже нельзя.

Для чего существует TRIM

SSD должен заранее готовить flash blocks к новой записи. Файловая система освобождает место, а TRIM помогает передать эту информацию накопителю, чтобы controller не переносил устаревшие страницы без необходимости.

Для производительности это нормальная полезная функция. Проблемой TRIM становится только в контексте случайно удаленных данных, когда «свободный» блок на самом деле все еще нужен владельцу.

Что происходит между Delete и NAND

При удалении сначала изменяется файловая система. Затем storage stack может отправить deallocate для диапазона LBA. После этого controller больше не обязан сохранять прежнее содержимое этих адресов как актуальное.

Но сама физическая работа с NAND выполняется внутренними алгоритмами SSD, а не командой Windows напрямую.

Почему команда и физическое стирание — разные этапы

Kingston описывает TRIM как advisory-команду, после которой firmware очищает ненужные blocks при garbage collection. Нельзя говорить, что пользователь нажал Delete и в ту же микросекунду все cells обязательно были стерты.

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

Отключение TRIM после инцидента

Старые инструкции часто советуют немедленно отключить TRIM. Но уже отправленную команду это не отменяет. Более того, загрузка ОС и настройка параметров создают новую активность на системном SSD.

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

Форматирование и reinstall

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

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

TRIM на внешнем SSD

USB enclosure добавляет еще один уровень. Команда должна поддерживаться bridge и драйверами. Нельзя автоматически считать внешний SSD «защищенным от TRIM» только потому, что он подключен по USB.

При анализе полезно записать модель самого SSD и модель/тип корпуса, если она известна.

Garbage collection и дальнейшая работа

Controller может использовать свободные периоды для очистки блоков. Одновременно система продолжает выполнять обычные writes. Это две причины не запускать на исходном SSD множество recovery-программ подряд.

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

Какие факторы меняют перспективу recovery

  • поддержка TRIM по всему тракту;
  • controller и firmware;
  • время после удаления;
  • последующие записи;
  • hardware encryption;
  • тип файловой операции.

Поэтому отсутствие файла после одного сканирования еще не объясняет, что именно произошло внутри SSD.

Что делать сразу после удаления

Не устанавливать программы на источник, не копировать на него новые файлы, не запускать Secure Erase и не форматировать повторно. Для системного SSD с действительно важными данными разумно завершить работу компьютера.

Это не гарантирует recovery, но сохраняет больше исходного состояния для последующей оценки.

Как TRIM меняет реальные сценарии восстановления

Если удаление произошло на несистемном SSD, пользователь может остановить запись относительно быстро. На системном накопителе Windows продолжает работать: обновляет журналы, cache, временные файлы, браузерные данные и другие структуры. Поэтому даже фраза «я ничего не записывал» не означает полного отсутствия активности.

Quick format и переустановка системы создают еще более сложную картину. Меняются метаданные, могут освобождаться большие диапазоны LBA, затем поверх источника записывается новая ОС. В таком случае результат определяется не только TRIM, но и обычной перезаписью. Чем точнее известна последовательность действий, тем реалистичнее оценка.

Важно и то, что recovery software может показать старое дерево каталогов, но это не гарантирует сохранность содержимого. Метаданные иногда остаются видимыми отдельно от data blocks. Поэтому «программа нашла названия» и «файл открывается корректно» — два разных критерия.

При профессиональной оценке смотрят на тип SSD, interface, controller/firmware, поддержку deallocate, время работы после события и наличие encryption. TRIM нельзя ни игнорировать, ни превращать в единственную причину результата. Это один из процессов внутри более сложной системы хранения.

Три распространенных мифа о TRIM

Первый: «команда всегда мгновенно физически стирает NAND». Это слишком упрощенно — внутреннюю очистку контролирует firmware. Второй: «если отключить TRIM после удаления, все вернется». Уже отправленный deallocate не откатывается. Третий: «достаточно перебрать больше recovery-программ». На системном SSD каждая дополнительная сессия означает время работы и новые записи.

Технически правильнее говорить о вероятности и условиях. TRIM — сильный фактор, но рядом с ним работают FTL, garbage collection, encryption и обычная перезапись. Поэтому вывод делают по конкретному накопителю и истории действий.

Частые вопросы

TRIM — это что?

Команда/механизм, сообщающий SSD о логических блоках, которые больше не нужны.

TRIM сразу удаляет файл физически?

Физическая очистка зависит от firmware и garbage collection.

Можно ли отключить TRIM после удаления и вернуть файл?

Нет, это не отменяет уже отправленную команду.

Почему SSD отличается от HDD?

К перезаписи добавляются FTL, TRIM и внутренняя garbage collection.

Что делать первым?

Остановить использование SSD и не устанавливать recovery software на него.

Нужны данные с SSD?

После удаления важно знать точную операцию и сколько времени SSD оставался включенным. Не устанавливайте recovery-программы на источник и не создавайте на нем новые файлы ради проверки.