Error symbol grub is lockdown not found astra linux

Здравствуйте. После обновления Astra Linux Special Edition 1.6 с обновления 6 до оперативного обновления 9 на сервере, после перезагрузки системы слетел GRUB: symbol 'grub_calloc' not found. И строка grub rescue. Загрузка в режиме EFI. У сервера был настроен дисковый массив на dmraid, в fstab...

21.10.2021

Здравствуйте.
После обновления Astra Linux Special Edition 1.6 с обновления 6 до оперативного обновления 9 на сервере, после перезагрузки системы слетел GRUB: symbol ‘grub_calloc’ not found. И строка grub rescue. Загрузка в режиме EFI.
У сервера был настроен дисковый массив на dmraid, в fstab был прописан корневой раздел по идентификатору массива (UUID). При загрузке дистрибутива с DVD в режиме восстановления массив не видится потому как в ALSE, как я понял, нет нормальных драйверов для RAID.
Посоветуйте что можно сделать в данном случае, чтобы починить загрузку?
Спасибо.

Последнее редактирование: 21.10.2021

21.10.2021

Спасибо за ответ. Проблема в том, что из-за dmraid в системе нет дисков sda. Если б можно было как-то увидеть массив на dmraid — поправить GRUB можно было бы без особых усилий.

21.10.2021

При чём здесь sda? Это просто пример подвернулся. Вы вообще пробовали? Мне тоже интересно.
Там был пример с новым железом и Астра как то спасовала. После восстановления загрузчика смогла загрузиться. Мне эта утилита помогала не только линуксовые загрузчики восстанавливать, но и виндовые (Win 10) после падения линукс-систем и ихнего Граба.

oko


21.10.2021

to Jbanchic
Правильно понимаю, что у вас на руках только DVD-диск с ALSE (базовый, без обновлений) и проблемный сервер, на который кто-то ранее установил пакеты поддержки dmraid? Если так, то пробуйте аналогично вот этому…

to YNA
Никакая утилита не поможет, если ОС, под которой загрузились, не видит накопителей с установленной ОС. Поэтому да, дело как раз в поддержке блочных устройств (те же /dev/sda в обычном случае SATA-дисков или /dev/dm в случае dmraid)…

21.10.2021

Правильно понимаю, что у вас на руках только DVD-диск с ALSE (базовый, без обновлений) и проблемный сервер, на который кто-то ранее установил пакеты поддержки dmraid? Если так, то пробуйте аналогично вот этому…

Сервер был установлен с базового диска по вами указанной инструкции с подсовыванием модулей dmraid для того, чтобы система увидела массив и прекрасно работала и грузилась. На нее успешно было накатано оперативное обновление 6. После накатывания последнего оперативного обновления 9, который кстати установился без проблем, после перезагрузки сломался GRUB. На текущий момент времени при старте появляется grub rescue и вышеуказанная ошибка. Для того, чтобы починить GRUB, как я понимаю, нужно подцепить дисковый массив, который голым дистрибом ALSE в режиме восстановления не видится на моменте подключения корневого каталога. Поэтому и задаю вопрос здесь.

P.S.: Особенность dmraid в том, что в fstab сам массив прописан был по UUID. И, как я понимаю, там есть свои особенности. Для того, чтобы подцепить массив по UUID и примонтировать его куда-либо для починки GRUB что нужно сделать?

Последнее редактирование: 21.10.2021

oko


21.10.2021

to Jbanchic
Никогда не пользовался ALSE в режиме восстановления…
В Grub rescue команда ls тоже ничего не показывает?
Остается вариант грузануться с LiveCD с поддержкой dmraid, выполнить chroot в /boot-раздел или корневой (если /boot там) и оттуда восстановить grub через update-grub. Сам подобным не занимался на ALSE с учетом обязаловки паролей на grub и невозможности корректно использовать root (придется chroot выполнять под уч.запись sudo-пользователя, устанавливавшего систему). Поэтому что-то более детальное посоветовать не могу…

oko


21.10.2021

to Jbanchic
Кстати, да, можно и дистриб ALSE использовать. Выполнить как по инструкции dmraid=true, чтобы ALSE его увидела. Далее CTRL+ALT+F2, chroot, установить пакеты поддержки dmraid и обновить GRUB. И, не возвращаясь в графику, ребутнуть сервер. По-идее должно помочь…

21.10.2021

Никогда не пользовался ALSE в режиме восстановления…
В Grub rescue команда ls тоже ничего не показывает?

Показывает. Два диска с тремя разделами на каждом. Ну оно и понятно — в RAID зеркало.
hd0 (hd0.gpt3) (hd0.gpt2) (hd0.gpt1) hd1 (hd1.gpt3) (hd1.gpt2) (hd1.gpt1)

Остается вариант грузануться с LiveCD с поддержкой dmraid, выполнить chroot в /boot-раздел или корневой (если /boot там) и оттуда восстановить grub через update-grub

Да, я примерно так и представлял. Спасибо.

oko


21.10.2021

to Jbanchic
Значит, поддержка dmraid не слетела. Тогда без LiveCD (чисто из grub rescue) можете сделать то же самое — ищите hd с /boot, чрутьтесь в него и далее по тексту…

21.10.2021

to Jbanchic
Значит, поддержка dmraid не слетела. Тогда без LiveCD (чисто из grub rescue) можете сделать то же самое — ищите hd с /boot, чрутьтесь в него и далее по тексту…

Если можно поподробнее….из grub rescue. Какие команды доступны и какие нужно запустить из rescue? Насколько я знаю, в этом режиме доступны всего 4 команды: ls, set, unset, insmod.
По разделам: gpt3 -скорее всего раздел EFI, gpt2 — /, gpt1 — swap.

Последнее редактирование: 21.10.2021

oko


21.10.2021

to Jbanchic
Не знаю, актуально ли еще, но вот тут испчерпывающе расписаны возможные варианты…
Вообще, у вас, конечно, комбо: dmraid + efi. Imho, в подавляющем большинстве случаев любого сервера и GPT (и, следовательно, EFI) не требуется, и аппаратный (и тем более фейковый) RAID проще заменить программным на базе mdadm. Если речь не идет о каких-нибудь сверхнагруженных системах и обязательном требовании BBU и доп.кэширования…

21.10.2021

Добрый вечер, когда уберут косяк с grub из обновлений? Уже две тачки легли.

22.10.2021

Добрый вечер, когда уберут косяк с grub из обновлений? Уже две тачки легли.

Похоже надо трясти техподдержку Астры. Похоже это реально проблема для тех, у кого есть RAID-массивы.

27.10.2021

Проблема с dmraid решена.
Долгое время не было возможности исправить ситуацию из-за того, что загруженная система не распознавала разделы массива, видела только сам массив без разделов. Не помог ни оригинальный дистрибутив ALSE, ни более новый ALCE.
В итоге загрузчик починен. Помог Linux Mint 20.2 Cinnamon загрузочный диск с офсайта. Все три раздела (EFI, root, swap) система увидела без добавления инструкции dmraid=true.
Решение:
1. Создается каталог, к примеру /mnt/1
2. Монтируется корневой каталог (в моем случае /dev/mapper/isw_xxxxx_xxxp2) в /mnt/1
3. mount -o bind /proc /mnt/1/proc
mount -o bind /sys /mnt/1/sys
mount -o bind /dev /mnt/1/dev
4. chroot /mnt/1
5. Если у вас UEFI загрузка, то дополнительно монтируется раздел с EFI (в моем случае /dev/mapper/isw_xxxxx_xxxp1) в раздел, в который он должен монтироваться в /etc/fstab (после chroot он легко смотрится cat /etc/fstab) (в моем случае в /boot/efi)
6. grub-install
7. update-grub

Загрузчик починен, система грузится.

P.S.:Единственное добавлю, что в некоторых случаях, если используется UEFI, в BIOS может появиться другой починенный раздел загрузки и сохранится старый, который не грузит grub. Лишний можно (да и нужно) удалить в BIOS.

12.11.2021

1. Ошибка error symbol: `grub_calloc` not found на дисках с UEFI.
2. Загрузиться в AstraLinux Orel 2.13.1 livecd или Linux Mint 20.2 livecd.
3. Список дисков:
# lsblk
4. Монтируем корневой раздел:
# sudo mount /dev/sda2 /mnt/
5. efi:
# sudo mount /dev/sda1 /mnt/boot/efi/
7. # sudo mount -o bind /sys/ /mnt/sys/
# sudo mount -o bind /proc/ /mnt/proc/
# sudo mount -o bind /dev/ /mnt/dev/
8. # sudo chroot /mnt/
9. # grub-install
10. # update-grub
11. Перезагрузка.

nnNGcdiVMJw.jpg

01.07.2022

Исправить GRUB UNKNOWN ERROR:
1. Список доступных разделов:
# ls
2. Просмотреть содержимое каждого раздела:
# ls (hd0,3)/
Если вы увидели папку boot, значит это наш раздел.
3. # set root=(hd0,3)
# set prex=(hd0,3)/boot/grub
4. # insmod normal
# normal

Если загрузились с текущего диска:

1. Устанавливаем GRUB на диск /dev/sda:
# sudo grub-install
2. # sudo update-grub
3. Перезагрузка.

  • 116.3 КБ
    Просмотры: 3 271

  • 18.6 КБ
    Просмотры: 3 160

Symposion33

Posts: 9
Joined: 2021-08-03 21:13

Grub bootloader ERROR after Installation

#1

Post

by Symposion33 » 2021-08-04 09:46

Hello!

I originally installed Manjaro Linux as Dual Boot after Win10, it all worked, but I decided after some months to install Debian Linux instead of Manjaro.
I resized my Nvme to get a bit more space for the Linux partition first, then used the debian-live-10.10.0-amd64-kde+nonfree.iso from a USB stick.
Installation went flawlessly, but the first boot attempt produced this error:

error: symbol ‘grub_is_lockdown’ not found
Entering rescue mode…
grub rescue>

Thanks to my MSI Bios I can still press F11 and boot into either Win10 and Debian, but of course I want to fix this Grub Problem.

/boot/efi/EFI# ls -la
total 6
drwx—— 6 root root 1024 Aug 2 17:20 .
drwx—— 3 root root 1024 Jan 1 1970 ..
drwx—— 2 root root 1024 Jul 30 2020 Boot
drwx—— 2 root root 1024 Aug 2 17:20 debian
drwx—— 2 root root 1024 Mar 3 12:53 Manjaro
drwx—— 4 root root 1024 Jul 30 2020 Microsoft

Obviously the installer (or I) screwed this up, there is no more Manjaro on the System, just Debian and Win10.
I didn’t try anything yet. My first idea would be to delete the Manjaro directory in the /boot/efi/EFI directory,
but I guess it would need more than that to fix this issue, so I hope you guys can help me out.

Thank you!


mm3100

Posts: 324
Joined: 2020-10-21 21:39
Has thanked: 7 times
Been thanked: 12 times

Re: Grub bootloader ERROR after Installation

#2

Post

by mm3100 » 2021-08-04 16:52

Check with efibootmgr -v to see boot order of EFI files. If Manjaro bootloader is before Debian or Win10 then that is your issue. For that you can change ordering, deactivate or delete Manjaro EFi file.

To deactivate run efibootmgr -A -b bootXXXX, where bootXXXX of Manjaro you get from efibootmgr -v. Then try to restart. If it works fine then that is your issue. Deactivating won’t delete anything, will just make it inactivate in boot process.

If you set Debian to be first in order then it will start it with grub, from there you could chose Win10 or Debian.



Symposion33

Posts: 9
Joined: 2021-08-03 21:13

Re: Grub bootloader ERROR after Installation

#4

Post

by Symposion33 » 2021-08-06 16:51

ok here’s what I did so far, rebooting now after writing this reply…
No idea why there’s 2 Debian entries, maybe one for GUI one for shell? I’ll have to check later…

Code: Select all

root@Valhalla:/boot# efibootmgr -v
BootCurrent: 0001
Timeout: 2 seconds
BootOrder: 0003,0000,0001,0004
Boot0000* Windows Boot Manager  HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIMICROSOFTBOOTBOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0001* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANSHIMX64.EFI)
Boot0003* Manjaro       HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIMANJAROGRUBX64.EFI)
Boot0004* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANGRUBX64.EFI)..BO
root@Valhalla:/boot# man efibootmgr
root@Valhalla:/boot# efibootmgr -A -b boot0003
Invalid bootnum valueboot0003
                        ^
root@Valhalla:/boot# efibootmgr -A -b 0003    
BootCurrent: 0001
Timeout: 2 seconds
BootOrder: 0003,0000,0001,0004
Boot0000* Windows Boot Manager
Boot0001* debian
Boot0003  Manjaro
Boot0004* debian
root@Valhalla:/boot# efibootmgr -v
BootCurrent: 0001
Timeout: 2 seconds
BootOrder: 0003,0000,0001,0004
Boot0000* Windows Boot Manager  HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIMICROSOFTBOOTBOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0001* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANSHIMX64.EFI)
Boot0003  Manjaro       HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIMANJAROGRUBX64.EFI)
Boot0004* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANGRUBX64.EFI)..BO
root@Valhalla:/boot# efibootmgr -B 0003
You must specify an entry to delete (see the -b option).
root@Valhalla:/boot# efibootmgr -B -b 0003
BootCurrent: 0001
Timeout: 2 seconds
BootOrder: 0000,0001,0004
Boot0000* Windows Boot Manager
Boot0001* debian
Boot0004* debian
root@Valhalla:/boot# cd efi/
root@Valhalla:/boot/efi# ls -la
total 6
drwx------ 3 root root 1024 Jan  1  1970 .
drwxr-xr-x 4 root root 4096 Aug  2 19:34 ..
drwx------ 6 root root 1024 Aug  2 17:20 EFI
root@Valhalla:/boot/efi# cd EFI
root@Valhalla:/boot/efi/EFI# ls -la
total 6
drwx------ 6 root root 1024 Aug  2 17:20 .
drwx------ 3 root root 1024 Jan  1  1970 ..
drwx------ 2 root root 1024 Jul 30  2020 Boot
drwx------ 2 root root 1024 Aug  2 17:20 debian
drwx------ 2 root root 1024 Mar  3 12:53 Manjaro
drwx------ 4 root root 1024 Jul 30  2020 Microsoft
root@Valhalla:/boot/efi/EFI# efibootmgr -v
BootCurrent: 0001
Timeout: 2 seconds
BootOrder: 0000,0001,0004
Boot0000* Windows Boot Manager  HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIMICROSOFTBOOTBOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0001* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANSHIMX64.EFI)
Boot0004* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANGRUBX64.EFI)..BO
root@Valhalla:/boot/efi/EFI# rm -rf M
Manjaro/   Microsoft/ 
root@Valhalla:/boot/efi/EFI# rm -rf Manjaro/
root@Valhalla:/boot/efi/EFI# ls -la
total 5
drwx------ 5 root root 1024 Aug  6 18:49 .
drwx------ 3 root root 1024 Jan  1  1970 ..
drwx------ 2 root root 1024 Jul 30  2020 Boot
drwx------ 2 root root 1024 Aug  2 17:20 debian
drwx------ 4 root root 1024 Jul 30  2020 Microsoft
root@Valhalla:/boot/efi/EFI#

Last edited by Symposion33 on 2021-08-08 07:52, edited 1 time in total.


Symposion33

Posts: 9
Joined: 2021-08-03 21:13

Re: Grub bootloader ERROR after Installation

#5

Post

by Symposion33 » 2021-08-06 17:00

so, the Grub error is gone now, but the PC just boots directly into Win10 instead of showing the Grub selection window.
Guess I need to change something more, but it’s already better.
I’ll read the man page, maybe I can figure it out, or if you’re so nice, help me out again.
in any case, thanks a lot!! (I don’t see a thank you button on your reply, otherwise I would hit that too)


Symposion33

Posts: 9
Joined: 2021-08-03 21:13

Re: Grub bootloader ERROR after Installation

#6

Post

by Symposion33 » 2021-08-06 17:13

Code: Select all

root@Valhalla:/home/platon# efibootmgr -v
BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 0000,0001,0004
Boot0000* Windows Boot Manager  HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIMICROSOFTBOOTBOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0001* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANSHIMX64.EFI)
Boot0004* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANGRUBX64.EFI)..BO
root@Valhalla:/home/platon# efibootmgr -o 0001,0000,0004
BootCurrent: 0004
Timeout: 2 seconds
BootOrder: 0001,0000,0004
Boot0000* Windows Boot Manager
Boot0001* debian
Boot0004* debian
root@Valhalla:/home/platon# /sbin/shutdown -r now

I hope that returns the Grub menu, as you wrote.
One more question: i have now boot 0,1,4. can i rename Boot0004 into Boot002 somehow?

thanks a lot!

Last edited by Symposion33 on 2021-08-08 07:53, edited 1 time in total.


Symposion33

Posts: 9
Joined: 2021-08-03 21:13

Re: Grub bootloader ERROR after Installation

#7

Post

by Symposion33 » 2021-08-06 17:30

ok, I set boot order to -o 4,1,0 and then used -n to set next boot . which worked ONCE, after every boot it forgets the boot order I gave it.
do in need to use -w to write ‘unique signature to MBR’?

-w | —write-signature
write unique signature to the MBR if needed

or how can i tell the system to not forget my boot order?
thanks

Last edited by Symposion33 on 2021-08-06 18:18, edited 1 time in total.


mm3100

Posts: 324
Joined: 2020-10-21 21:39
Has thanked: 7 times
Been thanked: 12 times

Re: Grub bootloader ERROR after Installation

#8

Post

by mm3100 » 2021-08-06 18:18

You have broken UEFI implementation, like I do. Your system might not be able to remember boot order. To get grub to start you need to deactivate windows EFI file. Like you did with Manjaro in start. It doesn’t remove it from boot order, but when you look at description it is missing *, which means it is inactive, and won’t start. So you didn’t really needed to delete Manjaro one at all.

Run

You will still be able to boot windows from grub. If you don’t see windows as option in grub, you would have to call OS probing manually. Check here for possible issues.
https://wiki.debian.org/DualBoot/Windows10

As for why there are 2 Debian EFI files I am not sure, I don’t have that, but did you possibly install Debian with secure boot off once? As that would explain other one.

Edit, also please edit previous post and place that text to code block, so it is easier to read through.


Symposion33

Posts: 9
Joined: 2021-08-03 21:13

Re: Grub bootloader ERROR after Installation

#9

Post

by Symposion33 » 2021-08-08 08:03

Code: Select all

root@Valhalla:/home/platon# efibootmgr -v
BootCurrent: 0001
Timeout: 2 seconds
BootOrder: 0000,0001,0004
Boot0000* Windows Boot Manager  HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIMICROSOFTBOOTBOOTMGFW.EFI)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}....................
Boot0001* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANSHIMX64.EFI)
Boot0004* debian        HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANGRUBX64.EFI)..BO
root@Valhalla:/home/platon# efivootmgr -A -b 0000
bash: efivootmgr: command not found
root@Valhalla:/home/platon# efibootmgr -A -b 0000
BootCurrent: 0001
Timeout: 2 seconds
BootOrder: 0000,0001,0004
Boot0000  Windows Boot Manager
Boot0001* debian
Boot0004* debian
root@Valhalla:/home/platon# efibootmgr -t 6
BootCurrent: 0001
Timeout: 6 seconds
BootOrder: 0000,0001,0004
Boot0000  Windows Boot Manager
Boot0001* debian
Boot0004* debian
root@Valhalla:/home/platon# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev             16G     0   16G   0% /dev
tmpfs           3.2G  9.5M  3.2G   1% /run
/dev/nvme0n1p5  335G   11G  308G   4% /
tmpfs            16G   37M   16G   1% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs            16G     0   16G   0% /sys/fs/cgroup
/dev/nvme0n1p1   96M   29M   68M  30% /boot/efi
tmpfs           3.2G   16K  3.2G   1% /run/user/1000

Image

After disabling the Windows Boot option, the PC still boots directly into Win10. Grub does not even show up (unless I explicitly tell efibootmgr to boot Debian partion on next boot, then it works once)
My system disk is a Crucial NVME P1 1000GB, all the other disks are SATA hdds.



mm3100

Posts: 324
Joined: 2020-10-21 21:39
Has thanked: 7 times
Been thanked: 12 times

Re: Grub bootloader ERROR after Installation

#11

Post

by mm3100 » 2021-08-08 11:47

p.H wrote: ↑2021-08-08 11:01

mm3100 wrote: ↑2021-08-06 18:18
You have broken UEFI implementation, like I do. Your system might not be able to remember boot order.

Then how come the Manjaro boot entry worked ?

It was first in the line, so it was selected before Windows one, if that is what you mean? I know that when I installed Windows after Debian, that Windows got pushed to the first line, don’t know exactly how it works.

Can you check in BIOS if you can change boot order, maybe you can do it there. I know I wasn’t able to and efibootmgr was only way. I am not sure why it started Windows even after EFI file was inactive. Can you check again after booting to Debian result of efibootmgr -v? Maybe it wasn’t saved?



mm3100

Posts: 324
Joined: 2020-10-21 21:39
Has thanked: 7 times
Been thanked: 12 times

Re: Grub bootloader ERROR after Installation

#13

Post

by mm3100 » 2021-08-09 10:30

Symposion33 wrote: ↑2021-08-06 16:51
root@Valhalla:/boot# efibootmgr -v
BootCurrent: 0001
Timeout: 2 seconds
BootOrder: 0003,0000,0001,0004
Boot0000* Windows Boot Manager HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIMICROSOFTBOOTBOOTMGFW.EFI)WINDOWS………x…B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}………………..
Boot0001* debian HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANSHIMX64.EFI)
Boot0003* Manjaro HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIMANJAROGRUBX64.EFI)
Boot0004* debian HD(1,GPT,ee358138-4650-4f46-b15b-84a524416213,0x800,0x32000)/File(EFIDEBIANGRUBX64.EFI)..BO

From here, it was first in line. But user didn’t change it manually. How they are ordered after installation is unknown to me. But even if Winodws is 0000, installer can still push something in front of it. Only issue with efibootmgr here is that it isn’t able to manually change boot order.

For example here is my list

Code: Select all

BootOrder: 0001,3001,0003,2001,2002,2003
Boot0001  Windows Boot Manager  HD(1,GPT,590f7b70-e9ba-4286-a898-00be21c7ca01,0x800,0x100000)/File(EFIMicrosoftBootbootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...a................
Boot0003* debian        HD(1,GPT,590f7b70-e9ba-4286-a898-00be21c7ca01,0x800,0x100000)/File(EFIdebianshimx64.efi)
Boot2001* USB Drive (UEFI)      RC
Boot3001* Internal Hard Disk or Solid State Disk        RC

Numbering scheme doesn’t make much sense, and they seem to be ordered randomly. But I wasn’t able to change order manually as well. Once I installed Winodws after Debian it pushed it self to the front of the line.





В Astra Linux, как и в любом другом Linux, разработчики совершенно не следят за соответствием компонентов системы друг другу. Зачем тратить на это время? Есть полурабочий пакетный менеджер, вот пусть он разбирается с соответствием зависимостей. Сами зависимости кривые? Пускай тогда пользователь разбирается что там чему не соответсвует. В конце концов, если система будет работать правильно, за что тогда получать зарплату? Нет, система должна постоянно преподносить сюрпризы и требовать квалифицированного обслуживания. Так крутится бизнес.

Обновления Astra Linux 1.6 так же требуют нестандартных действий. Даже если само обновление сработает, велика вероятность того, что одна часть загрузчика Grub обновится на boot-разделе. А другая часть загрузчика, расположенная в начале диска, останется старой. И перейти из rescue-режима в режим загрузки Grub не получится по той простой причине, что старая версия на уровне вызываемых функций несовместима с обновленной частью. Об этом, при выполнении команд перехода в normal-режим, будет говорить следующая ошибка:

error: symbol `grub_calloc` not found

Если так произошло, средствами установленного Grub-а восстановить загрузку не получится. Надо пользоваться дополнительным компакт-диском с утилитами восстановления или загрузочной флешкой.

Итак, надо достать первый установочный диск Astra Linux 1.6, и, если необходимо, сделать из него установочную флешку, например через утилиту Unetbootin. Когда произойдет старт с данного носителя, нужно сделать следующее.

В появившемся меню выбрать пункт «Режим восстановления»:

Система потребует принять лицензионное соглашение. Далее запросит клавиши переключения языка ввода. Потом спросит имя компьютера. Вроде как это имя будет использоваться только для сеанса восстановления, если придется работать с сетью. То есть, данная настройка не должна повлиять на существующие настройки сети восстанавливаемой системы.

В конце концов режим восстановления попросит выбрать корневую файловую систему (на нее будет устанавливаться вторая часть Grub). Необходимо выбрать корневой раздел диска с установленной ОС. Здесь возможны два варианта:

  1. Если специальный boot-раздел не создавался, то выбирается просто корневой раздел с установленной ОС.
  2. Если создавался boot-раздел (это раздел, на котором есть каталог /boot), то следует выбирать его. Не следует путать boot-раздел и EFI-раздел, это разные вещи. В данном случае речь идет именно о boot-разделе.

Далее возможно два варианта: простая переустановка Grub, если в системе не использовалось загрузка EFI, и переустановка Grub для системы с EFI.

Простая переустановка Grub

Необходимо выбрать пункт «Переустановка системного загрузчика Grub».

Появится окно, в котором необходимо указать устройство для установки системного загрузчика. Имеется в виду, что надо указать место, в которое будет установлена первая (начальная) часть загрузчика Grub. Обычно, это MBR (т. е. главная загрузочная запись) первого диска, например /dev/sda.

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

Переустановка Grub с системой EFI (UEFI)

Возможен вариант, что в системе использовалась загрузка EFI. Тогда на запрос «Монтировать /boot/efi как отдельный раздел» необходимо ответить ДА.

В меню восстановления (при обнаружении EFI), будет показан пункт «Выполнить принудительную установку GRUB в путь съемных носителей EFI». Нужно выбрать именно его, а не «Переустановку системного загрузчика Grub»:

После чего необходимо перезагрузиться.

Примечание: в случае с EFI главный системный загрузчик (из MBR) для загрузки ОС не используется. Материнская плата сама считывает VFAT-раздел с EFI-загрузчиками, и передает выбранному в интерфейсе BIOS EFI-загрузчику управление. То есть, главный системный загрузчик, располагаемый в MBR, в этом режиме вообще не используется. Именно поэтому для варианта EFI надо выбирать пункт «Выполнить принудительную установку GRUB в путь съемных носителей EFI» а не «Переустановка системного загрузчика Grub».

Если данное решение не приводит к устранению проблемы, необходимо перезагрузиться в режиме восстановления, и проделать практически те же действия, но пункт установки Grub не выбирать:

  • Выбрать устройство (раздел), используемое в качестве корневой файловой системы
  • Для параметра «Монтировать /boot/efi как отдельный раздел» установить ДА
  • В меню выбрать «Запуск оболочки»

В запущенной оболочке выполнить команды:

sudo grub-install

sudo update-grub

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

chroot /target

После окончания установки и обновления параметров, необходимо нажать <Ctrl+D> и перезагрузить ПК.

Понравилась статья? Поделить с друзьями:
  • Error symbol grub file filters not found как исправить
  • Error symbol grub disk native sectors not found
  • Error symbol grub disk get size not found
  • Error symbol grub debug free not found
  • Error symbol grub calloc not found при установке ubuntu