Как восстановить таблицу разделов диска?

  • 14 мая 2026 г. 22:01
Ответы на вопрос 3
Коротко — сначала не писать на диск, сделать побольше снимков/копий и только потом пытаться восстанавливать. Ниже — подробный безопасный план действий и инструменты для разных случаев.

1) Немедленно перестаньте использовать диск
- Любая запись снижает шансы на восстановление. Если это системный диск — загрузитесь с Live USB/Live CD.

2) Сделайте образ (копию) диска
- Работайте с копией, а не с оригиналом.
- Linux: ddrescue предпочтительнее dd (сохраняет частично читаемые данные):
  - Пример: ddrescue -f -n /dev/sdX /path/to/image.img /path/to/logfile
- Если нет возможности создать образ, по крайней мере не монтируйте разделы для записи.

3) Определите тип таблицы разделов
- MBR (aka "DOS/Windows legacy") или GPT (UEFI).
- Linux: sudo fdisk -l /dev/sdX или sudo parted /dev/sdX print
- Windows: в «Управление дисками» или командой diskpart -> list disk (GPT-диски помечены звездочкой).

4) Инструменты и общие методы восстановления
- TestDisk (кроссплатформенный, бесплатный) — универсален для восстановления таблицы разделов.
  - Запуск: testdisk -> Create -> выбрать диск -> указать тип таблицы (Intel/EFI GPT) -> Analyse -> Quick Search -> Deeper Search при необходимости -> можно просмотреть файлы на найденных разделах -> Write для записи восстановленной таблицы -> перезагрузка.
- Для GPT:
  - gdisk (CLI) часто автоматически предлагает восстановить GPT из резервного заголовка; можно взаимодействовать в интерактивном режиме.
  - sgdisk — умеет сохранять/загружать таблицу: можно сделать бэкап и восстановить (sgdisk --backup filename и sgdisk --load-backup filename /dev/sdX).
- Для MBR:
  - TestDisk хорошо работает.
  - В простых случаях можно вручную воссоздать разделы с точно теми же начальными/конечными секторами (fdisk/parted), не форматируя — тогда файловые системы станут снова доступными. Это требует точного знания начала/размера разделов.
- Для повреждённых файловых систем:
  - Linux: fsck / fsck.<fstype> (только после восстановления таблицы и только на копии/после бэкапа).
  - Windows: chkdsk (только после изображения/бэкапа).

5) Последовательность действий (рекомендация)
- Шаг A: образ диска (ddrescue).
- Шаг B: попытка автоматического восстановления таблицы через TestDisk (лучший первый шаг).
- Шаг C: если GPT и TestDisk не помог — попытать восстановить GPT из резервного заголовка через gdisk/sgdisk.
- Шаг D: если известно расположение разделов (старые таблицы, скриншоты, вывод fdisk), вручную восстановить разделы с теми же старт/энд секторами.
- Шаг E: если таблицу восстановить не удаётся — пробовать восстановление отдельных файлов (PhotoRec, extundelete, Recuva и т.п.) с образа.

6) Практические советы и предупреждения
- Всегда работайте с копией образа; если вы что-то испортили — можно повторить процесс.
- Не используйте Windows-утилиты, которые «исправляют» диск, без бэкапа — они могут перезаписать данные.
- При физическом повреждении диска лучше обратиться к профессионалам по восстановлению — домашние попытки часто усугубляют ситуацию.
- Если диск — часть RAID/ LVM, дополнительные шаги и знания нужны (не восстанавливать простыми утилитами без понимания массива).

7) Инструменты (ссылки/имена)
- TestDisk & PhotoRec — CGSecurity (кроссплатформенные, бесплатные).
- GNU ddrescue (gddrescue) — для копирования с повреждённых носителей.
- gdisk/sgdisk — работа с GPT.
- parted/fdisk/cfdisk — базовые инструменты управления разделами.
- Коммерческие: EaseUS, MiniTool Partition Recovery, R-Studio (есть Windows-версии, удобны но платные).

Если нужно — могу дать пошаговую инструкцию под вашу ситуацию. Уточните:
- Какая ОС и модель/тип диска (HDD/SSD)?
- MBR или GPT (если не знаете — скажите, что выводит fdisk/parted)?
- Доступен ли диск сейчас и можете ли создать образ?
- Есть ли у вас резервные копии таблицы разделов или старые дампы?
из гексдампа — LABELONE на /dev/sdc sector 1 жив, UUID тот самый. Скорее devices/filter в lvm.conf или use_devicesfile режет голый диск без разделов. Проверь: <br/> <br/> <code>pvscan --cache /dev/sdc</code> <br/> <pre><code>lvmconfig --type current devices/filter devices/use_devicesfile</code></pre> <br/> <code>pvck --dump headers /dev/sdc</code> <br/> <br/> если pvck скажет что type в label не "LVM2 001" — напиши
Спасибо большое, все решилось, да и файл из архива нужно было подменить missing на пустоту, и после рестарта, все восстановилось
Похожие вопросы