Я уничтожил таблицу разделов с помощью gparted, есть ли способ восстановить мой раздел?

Я вытер таблицу разделов NTFS (Windows), используя gparted, нажав «Device-> Create Partition Table … и затем примените», есть ли способ восстановить мой раздел NTFS?

Я попытался использовать эту команду gpart /dev/sda Я получаю следующий вывод:

 Begin scan... End scan. Checking partitions... Ok. Guessed primary partition table: Primary partition(1) type: 000(0x00)(unused) size: 0mb #s(0) s(0-0) chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r Primary partition(2) type: 000(0x00)(unused) size: 0mb #s(0) s(0-0) chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r Primary partition(3) type: 000(0x00)(unused) size: 0mb #s(0) s(0-0) chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r Primary partition(4) type: 000(0x00)(unused) size: 0mb #s(0) s(0-0) chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r 

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

4 Solutions collect form web for “Я уничтожил таблицу разделов с помощью gparted, есть ли способ восстановить мой раздел?”

Вы можете попробовать использовать testdisk для восстановления таблицы разделов. Testdisk будет читать поверхность диска и попытаться определить, где разделы начинаются и заканчиваются.

Существует возможность восстановить таблицу разделов, но для этого требуются 2 условия:

  1. Вы не перезагрузили свою машину.
  2. Прибор использовался в то время, когда таблица была изменена.

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

Как это сделать:

Перейдите в /sys/block/sda . Внутри вы увидите каталог для каждого раздела ( sda1 , sda2 и т. Д.). Внутри каждого из них находится файл с именем start и size (so /sys/block/sda/sda1/start ). Если вы воссоздаете таблицу разделов, используя те же самые начальные местоположения и размеры, вы будете в порядке.

Обратите внимание, что он не сохраняет тип раздела. Linux не заботится об этой информации. Поэтому после воссоздания вам нужно будет запомнить, какой тип раздела был установлен (NTFS или что-то еще).


пример

Оригинальный диск:

 # fdisk -l / dev / sdc

 Диск / dev / sdc: 8006 МБ, 8006926336 байт, 15638528 секторов
 Единицы = секторы 1 * 512 = 512 байт
 Размер сектора (логический / физический): 512 байт / 512 байт
 Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
 Идентификатор диска: 0x000ce29c

    Начальная команда загрузки устройства
 / dev / sdc1 2048 2099199 1048576 83 Linux
 / dev / sdc2 2099200 15638527 6769664 83 Linux
 # mount |  grep sdc
 / dev / sdc2 on / mnt / tmp type xfs (rw)
 # cat / mnt / tmp / world
 Здравствуйте

Очистка таблицы разделов

 # fdisk / dev / sdc
 Добро пожаловать в fdisk (util-linux 2.22.2).

 Изменения будут сохраняться только в памяти, пока вы не решите написать их.
 Будьте внимательны перед использованием команды записи.


 Команда (m для справки): d
 Номер раздела (1-4): 1
 Раздел 1 удален

 Команда (m для справки): d
 Выбранный раздел 2
 Раздел 2 удален

 Команда (m для справки): p

 Диск / dev / sdc: 8006 МБ, 8006926336 байт, 15638528 секторов
 Единицы = секторы 1 * 512 = 512 байт
 Размер сектора (логический / физический): 512 байт / 512 байт
 Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
 Идентификатор диска: 0x000ce29c

    Начальная команда загрузки устройства

 Команда (m для справки): w
 Таблица разделов была изменена!

 Вызов ioctl () для перезаписи таблицы разделов.

 ПРЕДУПРЕЖДЕНИЕ. Повторное чтение таблицы разделов с ошибкой 16: занято устройство или ресурс.
 Ядро по-прежнему использует старую таблицу.  Новая таблица будет использоваться в
 следующая перезагрузка или после запуска partprobe (8) или kpartx (8)
 Синхронизация дисков.

Обратите внимание, что он все еще установлен и доступен:

 # cat / mnt / tmp / world 
 Здравствуйте

Получить смещения

 # cd / sys / class / block / sdc

 # ls
 alignment_offset device @ events_poll_msecs power / ro slaves /
 bdi @ discard_alignment ext_range queue / sdc1 / stat
 держатели событий / диапазон sdc2 / подсистема @
 dev events_async inflight съемный размер uevent

 # cat sdc1 / start
 2048

 # cat sdc1 / размер
 2097152

 # cat sdc2 / start
 2099200

 # cat sdc2 / размер
 13539328

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


 # fdisk / dev / sdc
 Добро пожаловать в fdisk (util-linux 2.22.2).

 Изменения будут сохраняться только в памяти, пока вы не решите написать их.
 Будьте внимательны перед использованием команды записи.


 Команда (m для справки): n
 Тип раздела:
    p primary (0 первичных, 0 расширенных, 4 бесплатных)
    расширенный
 Выбрать (по умолчанию p): p
 Номер раздела (1-4, по умолчанию 1): 1
 Первый сектор (2048-15638527, по умолчанию 2048): 2048
 Последний сектор, + секторы или + размер {K, M, G} (2048-15638527, по умолчанию 15638527): +2097151
 Установлен раздел 1 типа Linux и размер 1 GiB

 Команда (m для справки): n
 Тип раздела:
    p первичный (1 первичный, 0 расширенный, 3 бесплатно)
    расширенный
 Выбрать (по умолчанию p): p
 Номер раздела (1-4, по умолчанию 2): 2
 Первый сектор (2099200-15638527, по умолчанию 2099200): 2099200
 Последний сектор, + сектора или + размер {K, M, G} (2099200-15638527, по умолчанию 15638527): +13539327
 Установлен раздел 2 типа Linux и размер 6.5 GiB

 Команда (m для справки): p

 Диск / dev / sdc: 8006 МБ, 8006926336 байт, 15638528 секторов
 Единицы = секторы 1 * 512 = 512 байт
 Размер сектора (логический / физический): 512 байт / 512 байт
 Размер ввода / вывода (минимальный / оптимальный): 512 байт / 512 байт
 Идентификатор диска: 0x000ce29c

    Начальная команда загрузки устройства
 / dev / sdc1 2048 2099199 1048576 83 Linux
 / dev / sdc2 2099200 15638527 6769664 83 Linux

 Команда (m для справки): w
 Таблица разделов была изменена!

 Вызов ioctl () для перезаписи таблицы разделов.

 ПРЕДУПРЕЖДЕНИЕ. Повторное чтение таблицы разделов с ошибкой 16: занято устройство или ресурс.
 Ядро по-прежнему использует старую таблицу.  Новая таблица будет использоваться в
 следующая перезагрузка или после запуска partprobe (8) или kpartx (8)
 Синхронизация дисков.

!! Обратите внимание, что при указании последнего сектора мы используем размер – 1. !!

верификация

Давайте размонтируем диск, запустим partprobe чтобы сообщить ядру забрать новую таблицу, а затем перемонтировать и проверить, что мы все равно добираемся до нашего файла.

 # umount / mnt / tmp /

 # partprobe / dev / sdc

 # mount / dev / sdc2 / mnt / tmp

 # cat / mnt / tmp / world 
 Здравствуйте

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

Если вам известны размеры диска NTFS, вы можете «перезагрузить» их с помощью fdisk или разделить, но я думаю, вам не повезло.

  • Больше не удается получить доступ к папкам: Ошибка ввода вывода
  • Монтирование NTFS-диска или папки в качестве доли Samba на Raspbian Jessie
  • NTFS-3G: все файлы являются «неподдерживаемой точкой повторной обработки»,
  • Что означает изменение файла / каталога?
  • Поддержка журнала USN (журнал изменений) в драйвере NTFS-3G
  • Есть ли инструмент Linux для дефрагментации разделов NTFS?
  • Не могу понять, что все эти диски sd
  • Существуют ли какие-либо утилиты, чтобы знать, где файл физически присутствует в hdd?
  • Потеряна загрузка Win7 после установки UBUNTU Vivid
  • Смонтируйте раздел ntfs два раза
  • Как клонировать раздел NTFS (WinXP) с поврежденного диска на новый?
  • Linux и Unix - лучшая ОС в мире.