GParted и TestDisk решают разные задачи, и путать их опасно. GParted меняет таблицу разделов и файловые системы, а TestDisk пытается найти потерянные разделы и вернуть их в таблицу. Оба инструмента работают с диском на низком уровне, поэтому правило одно: восстановление допустимо только на собственных дисках и только после резервной копии. Если диск уже щёлкает, перегревается или отдаёт ошибки чтения, сначала делайте посекторный образ, а не «лечите» разметку. Ниже — безопасный порядок действий, команды и чек-лист.
Когда нужен GParted, а когда TestDisk
GParted — редактор разделов. Он создаёт, удаляет, перемещает и изменяет размер разделов, форматирует файловые системы и проверяет их. Его применяют при подготовке нового диска, расширении корневого раздела и переносе места между соседними областями. TestDisk — инструмент поиска и восстановления. Он читает служебные области, находит остатки старых таблиц и файловых систем, показывает содержимое и позволяет записать исправленную таблицу обратно. Файлы внутри найденного раздела TestDisk тоже умеет копировать, но это не замена полноценному восстановлению данных.
Ключевая разница в риске. GParted выполняет изменения сразу после подтверждения операции, а TestDisk до команды Write работает в режиме анализа и ничего не пишет. Поэтому сначала анализируйте, затем принимайте решение. Если раздел повреждён, но файлы нужны, приоритет — копирование данных, а не «починка» разметки.
Подготовка: образ, SMART и отключение записи
Подключите диск к компьютеру, но не монтируйте его разделы. Остановите программы, которые могут писать на носитель, и по возможности работайте с live-системы, чтобы корневой раздел не был занят. Проверьте состояние накопителя через SMART: большое число переназначенных секторов или ошибок чтения означает, что диск может отказать в любой момент.
lsblk -f
sudo smartctl -a /dev/sdX
sudo apt install gparted testdisk smartmontools gddrescue
sudo ddrescue -d -r3 /dev/sdX disk.img disk.map
Для исправного диска допустим и обычный dd, но ddrescue лучше: он ведёт карту чтения, пропускает сбойные области и умеет повторять попытки. Образ должен лежать на другом носителе, где достаточно места. Сохранять его на сам восстанавливаемый диск нельзя. Дальнейшие эксперименты проводите с копией, а не с оригиналом; это единственная надёжная страховка.
GParted: работа с таблицей разделов
Запустите GParted и выберите нужный диск в правом верхнем углу. Проверьте, что это именно тот носитель: в списке отображаются модель, размер и текущая разметка. Незанятое место можно превратить в новый раздел, а существующий — увеличить, если справа есть свободная область. Операции попадают в очередь и применяются только после нажатия кнопки с галочкой, но это не делает их безопасными: перемещение начала раздела может занять часы.
sudo gparted
sudo partprobe /dev/sdX
sudo blkid /dev/sdX1
После применения изменений ядро не всегда сразу видит новую таблицу. Команда partprobe перечитывает её, а blkid показывает UUID и тип файловой системы. Если раздел был расширен, файловую систему нужно увеличить отдельно: GParted делает это в той же операции, но при работе через консоль понадобится resize2fs для ext4 или xfs_growfs для XFS. И не трогайте разделы, которые сейчас смонтированы, без понимания последствий.
TestDisk: поиск потерянных разделов
Запустите TestDisk от root и выберите Create для файла журнала. Укажите диск, тип таблицы разделов и перейдите в Analyse. Quick Search быстро проверяет типовые записи, Deeper Search ищет дольше и находит разделы по сигнатурам файловых систем. Найденные разделы отмечаются символами: проверьте их размеры и границы, а клавишей P посмотрите список файлов. Если содержимое похоже на правду, вернитесь и выберите Write, подтвердите запись и перезагрузитесь.
sudo sfdisk -d /dev/sdX > sdX-partitions-backup.txt
sudo testdisk /dev/sdX
sudo fsck -n /dev/sdX1
Перед записью сохраните текущую таблицу разделов командой sfdisk -d: файл пригодится, если результат окажется хуже исходного. Не соглашайтесь на автоматическую запись всех найденных разделов сразу. Иногда TestDisk находит старые копии таблицы, которые конфликтуют с актуальной; выбирайте только те, что совпадают по размеру и расположению с ожидаемой структурой. Если раздел не найден, попробуйте Deeper Search, но не повторяйте запись многократно.
PhotoRec и копирование файлов
Когда таблица разрушена безвозвратно, а нужны отдельные документы и фотографии, используйте PhotoRec. Он игнорирует файловую систему и ищет файлы по сигнатурам, поэтому восстанавливает данные даже с повреждённой разметки. Результат сохраняйте на другой диск: запись на тот же носитель затрёт ещё не прочитанные блоки. Имена и структура каталогов при этом теряются, файлы будут разложены по типам.
sudo photorec /dev/sdX
sudo mount -o ro /dev/sdX1 /mnt/recover
sudo cp -a /mnt/recover /mnt/backup/
Если раздел уже виден и монтируется, сначала скопируйте данные в режиме только для чтения. Не запускайте fsck на повреждённой файловой системе до копирования: проверка может изменить служебные структуры и усложнить восстановление. Команда fsck -n безопасна для диагностики, потому что ничего не исправляет, но и она не гарантирует отсутствие побочных эффектов на нестабильном железе.
Чек-лист восстановления
- Убедитесь, что диск принадлежит вам и данные можно восстанавливать законно.
- Сделайте резервную копию или посекторный образ до любых изменений.
- Проверьте SMART и при признаках отказа работайте только с копией.
- Не монтируйте разделы на запись и не форматируйте диск «на всякий случай».
- Сохраните текущую таблицу разделов через
sfdisk -dилиsgdisk --backup. - После записи перезагрузитесь, проверьте
lsblkи только затем монтируйте раздел.
Перед записью таблицы ещё раз сверьте модель и серийный номер диска: одна ошибка в букве устройства стоит всех данных. Типичная ошибка — сразу нажать Write, увидев знакомое имя раздела. Второй источник проблем — работа с образом через петлевое устройство без проверки смещений. Если после восстановления раздел определяется, но файлы не читаются, остановитесь и сделайте копию: дальнейшие эксперименты должны идти на копии.
sudo sgdisk --backup=sdX-gpt-backup.bin /dev/sdX
sudo partprobe /dev/sdX
sudo lsblk -f
Итог
GParted удобен для планового изменения разметки, TestDisk — для поиска потерянных разделов, а PhotoRec — для извлечения файлов. Порядок важнее инструмента: сначала копия и диагностика, затем анализ, и только потом запись изменений. На собственных дисках при наличии резервной копии шансы высоки, но ни один инструмент не даёт гарантии. Если данные критичны, остановитесь после создания образа и обратитесь к специалисту.