Эта статья написана как личное размышление, личное эссе или аргументативное эссе , в котором излагаются личные чувства редактора Википедии или излагается оригинальный аргумент по теме. ( Май 2013 ) |
Стабильный релиз | 0,3675 |
---|---|
Репозиторий |
|
Операционная система | Unix-подобный |
Тип | Редактор разделов |
Лицензия | Стандартная общественная лицензия GNU |
Веб-сайт | https://github.com/baruch/gpart |
gpart — это программная утилита, которая сканирует устройство хранения данных , проверяя данные с целью обнаружения разделов , которые могут существовать, но отсутствуют в таблицах разделов диска. Gpart был написан Михаилом Брзитвой из Германии . Релиз на сайте автора теперь старше, чем релизы, используемые некоторыми дистрибутивами. Похоже, что Михаил Брзитва не занимается активной поддержкой кода, вместо этого различные дистрибутивы (IE Fedora [1] или Debian [2] ) поддерживают свои собственные версии.
gpart пытается угадать разделы с любого устройства, которое может быть разделено, даже файла. Если первичная таблица разделов была утеряна, перезаписана или уничтожена, разделы все еще существуют на носителе, но операционная система не может получить к ним доступ.
gpart игнорирует первичную таблицу разделов и сканирует диск (или файл образа диска) сектор за сектором на предмет нескольких типов файловых систем/разделов. Он делает это, "спрашивая" модули распознавания файловых систем, считают ли они, что заданная последовательность секторов напоминает начало типа файловой системы или раздела.
Michail Brzitwa,: man page "gpart(8) - Linux man page", январь 2001 г.
Список этих модулей приведен ниже. Также модули могут быть написаны для будущих файловых систем и использованы в процессе обнаружения.
Если необходимо восстановить поврежденные разделы на единственном загрузочном диске машины, можно использовать Live CD, например knoppix, для запуска машины и использования утилит с диска.
Он также хорош для поиска и перечисления типов, местоположений и размеров непреднамеренно удаленных разделов, как первичных, так и логических. Он дает вам информацию, необходимую для их ручного повторного создания (с помощью fdisk , cfdisk , sfdisk и т. д.). Предполагаемая таблица разделов также может быть записана в файл или (если вы твердо уверены, что предполагаемая таблица полностью верна) непосредственно на дисковое устройство.
С некоторыми сильно поврежденными устройствами хорошей идеей будет использовать утилиту, например ddrescue, для создания резервной копии . Затем, когда у вас будет копия устройства, используйте gpart, чтобы угадать разделы на копии. Если это удастся, вы можете попробовать записать их обратно на устройство. Вы можете обнаружить, что при использовании ddrescue вы получаете ошибки чтения, потому что устройство повреждено, но если вы можете сделать разделы читаемыми с помощью вашей копии, вы можете попробовать использовать Mount (Unix) и извлечь данные из копии.
$ mount -t <тип части> /path/to/imagefile -o loop,offset=<смещение части> /mnt/loop
Это смонтирует раздел по смещению <part offset> в /mnt/loop, чтобы вы могли восстановить данные из файла. Чтобы получить смещение раздела, вы можете использовать либо fdisk -ul /path/to/imagefile, либо использовать вывод gpart. Посмотрите на пример вывода в строке размера, последняя пара круглых скобок имеет начало ( 16 ), а затем конец ( 3906559 ). При указании смещения всегда указывайте начало.
Это пример вывода сканирования флэш-накопителя объемом 8 ГБ с двумя разделами: одним разделом FAT16B объемом 2 ГБ и одним разделом xfs объемом 6 ГБ.
Начать сканирование... Возможный раздел (DOS FAT), размер (1907 МБ), смещение (0 МБ) Возможный раздел (файловая система SGI XFS), размер (5730 МБ), смещение (1907 МБ) Завершить сканирование. Проверка разделов... Раздел (DOS или Windows 95 с 32-битной FAT, LBA): первичный Раздел (файловая система Linux ext2): основной Хорошо. Предполагаемая первичная таблица разделов: Первичный раздел(1) тип: 012 (0x0C) (DOS или Windows 95 с 32-битной FAT, LBA) размер: 1907мб #s(3906544) s(16-3906559) гл: (0/1/1)-(1023/19/16)г (0/1/1)-(12207/19/16)р Первичный раздел(2) тип: 131 (0x83)(файловая система Linux ext2) размер: 5730мб #s(11736000) s(3906560-15642559) гл: (1023/19/16)-(1023/19/16)г (12208/0/1)-(48882/19/16)р Первичный раздел(3) тип: 000 (0x00)(не используется) размер: 0мб #с(0) с(0-0) гл: (0/0/0)-(0/0/0)г (0/0/0)-(0/0/0)г Первичный раздел(4) тип: 000 (0x00)(не используется) размер: 0мб #с(0) с(0-0) гл: (0/0/0)-(0/0/0)г (0/0/0)-(0/0/0)г
Поддерживаемые (предполагаемые) типы файловых систем или разделов: