LINUX.ORG.RU

Восстановление поврежденного gpt

 


0

1

После обновления biosа жесткого диска parted начал выдавать ошибку

$ sudo parted
[sudo] password for exprwat: 
GNU Parted 2.3
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print                                                            
Error: Invalid argument during seek for read on /dev/sda                  
Retry/Ignore/Cancel? r                                                    
Error: Invalid argument during seek for read on /dev/sda                  
Retry/Ignore/Cancel? i                                                    
Error: The backup GPT table is corrupt, but the primary appears OK, so that will
be used.
OK/Cancel? o                                                              
Backtrace has 8 calls on stack:
  8: /lib/x86_64-linux-gnu/libparted.so.0(ped_assert+0x2e) [0x7fe0a840348e]
  7: /lib/x86_64-linux-gnu/libparted.so.0(+0x4127b) [0x7fe0a843527b]
  6: /lib/x86_64-linux-gnu/libparted.so.0(ped_disk_new+0x58) [0x7fe0a8409698]
  5: parted() [0x406d5f]
  4: parted(interactive_mode+0xf3) [0x40dae3]
  3: parted(main+0x1446) [0x406446]
  2: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7fe0a7bec76d]
  1: parted() [0x4064d9]
                                                                          

You found a bug in GNU Parted! Here's what you have to do:

Don't panic! The bug has most likely not affected any of your data.
Help us to fix this bug by doing the following:

Check whether the bug has already been fixed by checking
the last version of GNU Parted that you can find at:

	http://ftp.gnu.org/gnu/parted/

Please check this version prior to bug reporting.

If this has not been fixed yet or if you don't know how to check,
please visit the GNU Parted website:

	http://www.gnu.org/software/parted

for further information.

Your report should contain the version of this release (2.3)
along with the error message below, the output of

	parted DEVICE unit co print unit s print

and the following history of commands you entered.
Also include any additional information about your setup you
consider important.

Assertion (last_usable <= disk->dev->length) at
../../../libparted/labels/gpt.c:980 in function _parse_header() failed.

С помощью утилы gdisk

$ sudo gdisk /dev/sda
GPT fdisk (gdisk) version 0.8.5

Warning! Disk size is smaller than the main header indicates! Loading
secondary header from the last sector of the disk! You should use 'v' to
verify disk integrity, and perhaps options on the experts' menu to repair
the disk.
Caution: invalid backup GPT header, but valid main header; regenerating
backup header from main header.

Warning! One or more CRCs don't match. You should repair the disk!

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: damaged

Command (? for help): v

Caution: The CRC for the backup partition table is invalid. This table may
be corrupt. This program will automatically create a new backup partition
table when you save your partitions.

Problem: The secondary header's self-pointer indicates that it doesn't reside
at the end of the disk. If you've added a disk to a RAID array, use the 'e'
option on the experts' menu to adjust the secondary header's and partition
table's locations.

Problem: Disk is too small to hold all the data!
(Disk size is 5856037983 sectors, needs to be 5860531055 sectors.)
The 'e' option on the experts' menu may fix this problem.

Caution: Partition 1 doesn't begin on a 8-sector boundary. This may
result in degraded performance on some modern (2009 and later) hard disks.

Consult http://www.ibm.com/developerworks/linux/library/l-4kb-sector-disks/
for information on disk alignment.

Identified 3 problems!

Данные наверное все сохранились

p:
Disk /dev/sda: 5856037983 sectors, 2.7 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): 4F60FAED-DB31-49E3-A3C0-3274E71A91C7
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 5860531021
Partitions will be aligned on 8-sector boundaries
Total free space is 4747250186 sectors (2.2 TiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              34         1953791   954.0 MiB   0700  primary
   2         1953792         9764863   3.7 GiB     8200  primary
   3         9764864       136718335   60.5 GiB    0700  
   6       136720384      1113282883   465.7 GiB   0700  

Command (? for help): 

6 - /home с ценными данными. Прошу совета как не потерять данные и восстановить gpt

После обновления biosа жесткого диска

чего это такое? имеется ввиду firmware? нафейхуа ты ее трогал тогда вообще?

Kompilainenn ★★★★★ ()

После обновления biosа жесткого диска

Первое правило обновления HDD firmware: не обновляй firmware, если доподлинно не известно о наличии проблем в текущей версии.

Второе правило обновления HDD firmware: не обновляй firmware, если доподлинно не известно, что новая версия действительно исправляет проблему.

Третье правило обновления HDD firmware: не обновляй firmware, если доподлинно не известно, что новая версия не сделает ещё хуже.

Четвёртое правило обновления HDD firmware: не обновляй firmware, если доподлинно не известно, что твои руки растут не из жопы.

Пятое, а на самом деле нулевое, правило обновления HDD firmware: если ты всё же решился огрести приключений на свою задницу, то не поленись проверить наличие в шкафу актуальной резервной копии.

That's all for today.

anonymous ()

Сейчас есть parted 3.1. Может там нет уже этой ошибки.

У вас действительно было такое странное разбиение диска, что 2.2 Тбайта свободны? Если границы разделов видны правильно, снимайте с данных резервные копии и создавайте таблицу заново, чтобы границы разделов совпадали с приведёнными в вашем сообщении.

mky ★★★★★ ()
Ответ на: комментарий от mky

У меня сейчас ubuntu стоит, там версия 2.3 последняя. Как можно обновить до 3.1? 2 тб свободных была на запас

Если границы разделов видны правильно, снимайте с данных резервные копии и создавайте таблицу заново, чтобы границы разделов совпадали с приведёнными в вашем сообщении.

Подскажите команды, мало в этом разбираюсь.

sptt17 ()
Ответ на: комментарий от sptt17

Дак у вас сейчас с ubuntu данные с этого диска читаются? Или вы только через gdisk можете определить границы разделов?

Я как понял, у вас там NTFS-разделы?

Вам нужно с помощью gdisk удалить и создать заново разделы, так, чтобы границы разделов в точности совпадали с приведёнными вами в первом посте. Прочитайте man по gdisk. Сначала несколько ″d″, потом ″n″ с указанием цифр, потом сменить типы разделов ″t″.

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

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

Обновлять gparted особого смысла нет, просто приводить это сообщение об ошибке не нужно было, только лишняя информация.

mky ★★★★★ ()
Ответ на: комментарий от mky

Все разрешилось.

Я как понял, у вас там NTFS-разделы?

Нет там были ext2, swap , ext4,ext4. Винда на другом диске, что б можно было «надежно» загрузиться. Командой gkdisk там два действия и потом все данные остались, я даже зачем-то начал восстанваливать давно не нужные удаленные файлы. Мудрый китаец всегда советует, когда поздно уже поменять, но все равно спасибо.

sptt17 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.