Обновление Windows сломало GRUB2 настолько плохо, что даже действующий USB-ключ не может загрузиться (сентябрь 2021 г.)

(и добро пожаловать в новую ветку «Давайте ненавидим Microsoft»)

Ноутбук Asus с твердотельным накопителем на 500 ГБ, разделом NTFS на 150 ГБ и разделом Ubuntu 20.04 на 350 ГБ (почти уверен, что это ext4). Двойная загрузка с приоритетом GRUB / Ubuntu над Windows. Важные данные о разделе Ubuntu, а не о разделе Windows.

После 1-часового обновления Windows без каких-либо происшествий (без отключения электроэнергии или чего-то еще) компьютер загружается в командной строке GRUB («grub>», а не «grub rescue>»). Что еще более неприятно, это также происходит, когда подключен активный USB-ключ (18.04, отлично протестировано на другом ноутбуке). При использовании команды «exit» в приглашении Windows загружается правильно.

Это был обзор, теперь перейдем к конкретике. Сначала с активным USB-ключом быстро появляется экран с надписью

Failed to open EFI\BOOT\grubx64.efi - Not Found
Failed to load image EFI\BOOT\grubx64.efi - Not Found
start_image() returned Not Found

, затем через секунду появляется приглашение «grub>»

В приглашении «grub>» ls возвращает

(proc) (hd0) (hd0,msdos1) (hd1) (hd2) (hd2,gpt6) (hd2,gpt5) (hd2,gpt4) (hd2,gpt3) (hd2,gpt2) (hd2,gpt1) 

ls (proc) возвращает

Device proc: Filesystem type procfs - Sector size 512B - Total size 0KiB

Живой USB-накопитель - это hd0, и, как и ожидалось, ls (hd0,1) возвращает

Partition hd0,msdos1: Filesystem type fat - Label 'Ubuntu 18_0', UUID 864E-2850 - Partition start at 1024KiB - Total size 15150080KiB

Я не знаю, что такое hd1; в компьютере раньше был жесткий диск, который несколько лет назад заменили на твердотельный накопитель, возможно, это следствие этого. ls (hd1) возвращает

Device hd1: No known filesystem detected - Sector size 2048B - Total size 514KiB

hd2 - настоящий жесткий диск. ls (hd2) описывает устройство

Device hd2: No known filesystem detected - Sector size 512B - Total size 488386584KiB

ls (hd2, xx) для xx = от 6 до 1 описывает разделы

Partition hd2,6: No known filesystem detected - Partition start at 14684736KiB - Total size 341580800KiB
Partition hd2,5: Filesystem type ntfs, UUID84127C1A127C1380 - Partition start at 146205696KiB - Total size 598016KiB
Partition hd2,4: Filesystem type ntfs, UUID22FE5C86FE5C53DF - Partition start at 661504KiB - Total size 145543516KiB
Partition hd2,3: No known filesystem detected - Partition start at 645120KiB - Total size 16384KiB
Partition hd2,2: Filesystem type fat, UUID 0057-5017 - Partition start at 542720KiB - Total size 102400KiB
Partition hd2,1: Filesystem type ntfs, Label 'Rcupration' - Partition start at 1024KiB - Total size 541696KiB

hd2,6 кажется разделом Ubuntu на 350 ГБ. Насколько я могу судить, он не должен говорить «Известная файловая система не обнаружена», на другом ноутбуке структура ext правильно определяется командой grub ls. hd2,4 кажется разделом Windows. hd2,1 имеет странное имя, потому что акценты на французском языке не отображаются

Когда я пытаюсь загрузиться с раздела linux с использованием

set prefix=(hd2,gpt6)/boot/grub
set root=(hd2,gpt6)
insmod normal
normal

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

set prefix=(hd0,1)/boot/grub
set root=(hd0,1)
insmod normal
normal

, я получаю живую подсказку USB, но затем, когда я выбираю «Попробовать Ubuntu без установки» или любой другой вариант, я получаю

error: /casper/vmlinuz has invalid signature.
error: you need to load the kernel first.
 
Press any key to continue...

, затем возвращаюсь в меню живого ключа, застрял в петле. Это немного странно, потому что ранее он предупреждал меня, что grubx64.efi не был найден, и из того, что я понял ( Обновление Windows 8 сломало мой GRUB ), тот факт, что он не запрашивал shimx64.efi, означает, что безопасная загрузка отключена, но тогда что это за подпись? В любом случае, отсутствие правильной загрузки с живого USB-ключа не позволяет мне использовать обычные инструменты для восстановления.

Теперь я все еще могу набрать "exit", и Windows загрузится нормально. В Windows я попытался загрузить Testdisk. Testdisk правильно определяет раздел Linux, как показано ниже:

     Partition                  Start        End    Size in sectors        
                                                                                                              
 1 P Windows Recovery Env        2048    1085439    1083392 [Basic data partition]                                      
 2 P EFI System               1085440    1290239     204800 [EFI system partition]                                      
No FAT, NTFS, ext2, JFS, Reiser, cramfs or XFS marker                                                                   
 3 P MS Reserved              1290240    1323007      32768 [Microsoft reserved partition]                              
 3 P MS Reserved              1290240    1323007      32768 [Microsoft reserved partition]                              
 4 P MS Data                  1323008  292410039  291087032 [Basic data partition]                                      
 5 P Windows Recovery Env   292411392  293607423    1196032                                                             
 6 P Linux filesys. data    293609472  976771071  683161600 

Однако, когда я захожу в этот раздел (с помощью Advanced Utils) и пытаюсь перечислить файлы, я получаю

Support for this filesystem wasn't enabled during compilation

Только Windows загружается правильно, поэтому у меня нет другой версии под рукой попробовать поработать на разделе ext4. Кроме того, я только что загрузил .exe и не скомпилировал его сам, так как у меня недостаточно опыта для этого.

Некоторые обсуждения на форумах Testdisk намекают, что если раздел указан дважды как 3 выше, это означает, что существует проблема.

Итак ...

Моя основная цель - получить доступ к файлам раздела Ubuntu, хотя восстановить все, как было вчера, было бы очень хорошо. Я вижу несколько возможных путей:

  • каким-то образом заставить GRUB загружать раздел Ubuntu, читая его как ext4, это
  • заставить GRUB правильно загружать живой USB-ключ (с этой подписью), а затем использовать инструменты восстановления оттуда
  • используйте Testdisk (в Windows) для восстановления раздела ext4, чтобы GRUB мог его правильно увидеть, или другой аналогичный инструмент в Windows
  • , используйте любой инструмент для чтения раздела Ubuntu как ext4, получения файлов и сброса компьютера из окна.

Есть ли у кого-нибудь идеи?

В любом случае, спасибо за чтение!

3
задан 25 September 2021 в 18:04

0 ответов

Другие вопросы по тегам:

Похожие вопросы: