Error Message
When using the sde.version_user_ddl.edit_version procedure in Oracle, the following error message displays when attempting to stop the edit operation:»SQL> exec sde.version_user_ddl.edit_version(‘DEFAULT’,2);
BEGIN version_user_ddl.edit_version(‘DEFAULT’,2); END;*
ERROR at line 1:
ORA-20048: Lock <893,1528,Y> not found, not deleted.
ORA-06512: at «SDE.VERSION_USER_DDL», line 765
ORA-06512: at line 1″
Cause
If the session has previously encountered the following error when calling sde.version_user_ddl.edit_version(‘DEFAULT’,1) multiple times, the above error message displays when stopping an edit operation:
SQL> exec version_user_ddl.edit_version(‘DEFAULT’,1);
BEGIN version_user_ddl.edit_version(‘DEFAULT’,1); END;
*
ERROR at line 1:
ORA-20176: State 1528 from version DEFAULT is not closed.
ORA-06512: at «SDE.VERSION_USER_DDL», line 765
ORA-06512: at line 1
This error is expected, because the state is already open. Applications should not attempt to start multiple edit operations on the version prior to stopping the edit operation.
Solution or Workaround
After the error message is returned, the result is that the state the version references is closed, and the stop edit operation is successful. The error message is a warning indicating that the internal state lock placed on the state during the edit operation is no longer present.
The error message can be ignored.
When I try to install the Client Network Game Stuttering Fix as well as the Ground Unit’s LOD Fix
I get the Install Window with ‘Continue’-Button NOT highlighted and the Message «Original version of Lock On 1.1 not found»
Does anyone knows what’s the problem or what I can do?
I have the CD-Version from SimWare.
Здравствуйте.
После обновления 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
Спасибо за ответ. Проблема в том, что из-за dmraid в системе нет дисков sda. Если б можно было как-то увидеть массив на dmraid — поправить GRUB можно было бы без особых усилий.
При чём здесь sda? Это просто пример подвернулся. Вы вообще пробовали? Мне тоже интересно.
Там был пример с новым железом и Астра как то спасовала. После восстановления загрузчика смогла загрузиться. Мне эта утилита помогала не только линуксовые загрузчики восстанавливать, но и виндовые (Win 10) после падения линукс-систем и ихнего Граба.
to Jbanchic
Правильно понимаю, что у вас на руках только DVD-диск с ALSE (базовый, без обновлений) и проблемный сервер, на который кто-то ранее установил пакеты поддержки dmraid? Если так, то пробуйте аналогично вот этому…
to YNA
Никакая утилита не поможет, если ОС, под которой загрузились, не видит накопителей с установленной ОС. Поэтому да, дело как раз в поддержке блочных устройств (те же /dev/sda в обычном случае SATA-дисков или /dev/dm в случае dmraid)…
Правильно понимаю, что у вас на руках только DVD-диск с ALSE (базовый, без обновлений) и проблемный сервер, на который кто-то ранее установил пакеты поддержки dmraid? Если так, то пробуйте аналогично вот этому…
Сервер был установлен с базового диска по вами указанной инструкции с подсовыванием модулей dmraid для того, чтобы система увидела массив и прекрасно работала и грузилась. На нее успешно было накатано оперативное обновление 6. После накатывания последнего оперативного обновления 9, который кстати установился без проблем, после перезагрузки сломался GRUB. На текущий момент времени при старте появляется grub rescue и вышеуказанная ошибка. Для того, чтобы починить GRUB, как я понимаю, нужно подцепить дисковый массив, который голым дистрибом ALSE в режиме восстановления не видится на моменте подключения корневого каталога. Поэтому и задаю вопрос здесь.
P.S.: Особенность dmraid в том, что в fstab сам массив прописан был по UUID. И, как я понимаю, там есть свои особенности. Для того, чтобы подцепить массив по UUID и примонтировать его куда-либо для починки GRUB что нужно сделать?
Последнее редактирование: 21.10.2021
to Jbanchic
Никогда не пользовался ALSE в режиме восстановления…
В Grub rescue команда ls тоже ничего не показывает?
Остается вариант грузануться с LiveCD с поддержкой dmraid, выполнить chroot в /boot-раздел или корневой (если /boot там) и оттуда восстановить grub через update-grub. Сам подобным не занимался на ALSE с учетом обязаловки паролей на grub и невозможности корректно использовать root (придется chroot выполнять под уч.запись sudo-пользователя, устанавливавшего систему). Поэтому что-то более детальное посоветовать не могу…
to Jbanchic
Кстати, да, можно и дистриб ALSE использовать. Выполнить как по инструкции dmraid=true, чтобы ALSE его увидела. Далее CTRL+ALT+F2, chroot, установить пакеты поддержки dmraid и обновить GRUB. И, не возвращаясь в графику, ребутнуть сервер. По-идее должно помочь…
Никогда не пользовался 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
Да, я примерно так и представлял. Спасибо.
to Jbanchic
Значит, поддержка dmraid не слетела. Тогда без LiveCD (чисто из grub rescue) можете сделать то же самое — ищите hd с /boot, чрутьтесь в него и далее по тексту…
to Jbanchic
Значит, поддержка dmraid не слетела. Тогда без LiveCD (чисто из grub rescue) можете сделать то же самое — ищите hd с /boot, чрутьтесь в него и далее по тексту…
Если можно поподробнее….из grub rescue. Какие команды доступны и какие нужно запустить из rescue? Насколько я знаю, в этом режиме доступны всего 4 команды: ls, set, unset, insmod.
По разделам: gpt3 -скорее всего раздел EFI, gpt2 — /, gpt1 — swap.
Последнее редактирование: 21.10.2021
to Jbanchic
Не знаю, актуально ли еще, но вот тут испчерпывающе расписаны возможные варианты…
Вообще, у вас, конечно, комбо: dmraid + efi. Imho, в подавляющем большинстве случаев любого сервера и GPT (и, следовательно, EFI) не требуется, и аппаратный (и тем более фейковый) RAID проще заменить программным на базе mdadm. Если речь не идет о каких-нибудь сверхнагруженных системах и обязательном требовании BBU и доп.кэширования…
Добрый вечер, когда уберут косяк с grub из обновлений? Уже две тачки легли.
Добрый вечер, когда уберут косяк с grub из обновлений? Уже две тачки легли.
Похоже надо трясти техподдержку Астры. Похоже это реально проблема для тех, у кого есть RAID-массивы.
Проблема с 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.
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. Перезагрузка.
Исправить 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
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). Необходимо выбрать корневой раздел диска с установленной ОС. Здесь возможны два варианта:
- Если специальный boot-раздел не создавался, то выбирается просто корневой раздел с установленной ОС.
- Если создавался 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> и перезагрузить ПК.
The Function in h2 core will add these methods in static block, but somehow the function map has missed something, didn’t know why, at least in my case it will work when I add the following code(JDK11):
try {
Field functionInfos = Function.class.getDeclaredField("FUNCTIONS");
functionInfos.setAccessible(true);
var lookup = MethodHandles.privateLookupIn(Field.class, MethodHandles.lookup());
VarHandle modifiers = lookup.findVarHandle(Field.class, "modifiers", int.class);
int mods = functionInfos.getModifiers();
if (Modifier.isFinal(mods)) {
modifiers.set(functionInfos, mods & ~Modifier.FINAL);
}
HashMap map = (HashMap) functionInfos.get(null);
System.out.println(" =================== function size: "+map.size());
if (map.size() < 189) {
var method = MethodHandles.privateLookupIn(Function.class, MethodHandles.lookup());
MethodHandle addFunc = method.findStatic(Function.class, "addFunctionNotDeterministic", MethodType.methodType(void.class, String.class,
int.class, int.class, int.class));
addFunc.invoke("LOCK_MODE",214,0, org.h2.value.Value.INT);
}
} catch (Throwable e) {
e.printStackTrace();
}
What example does this report relate to?
from-docker
What version of Next.js are you using?
latest
What version of Node.js are you using?
node:16-alpine
What browser are you using?
chrome
What operating system are you using?
macOS
How are you deploying your application?
sudo docker build -t myappname .
Describe the Bug
trace :
[+] Building 0.8s (11/19)
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 37B 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 34B 0.0s
=> [internal] load metadata for docker.io/library/node:16-alpine 0.7s
=> [internal] load build context 0.0s
=> => transferring context: 4.03kB 0.0s
=> [deps 1/5] FROM docker.io/library/node:16-alpine@sha256:2f50f4a428f8b5280817c9d4d896dbee03f072e93f4e0c70b90cc84bd1fcfe0 0.0s
=> CACHED [builder 2/5] WORKDIR /app 0.0s
=> CACHED [runner 3/8] RUN addgroup -g 1001 -S nodejs 0.0s
=> CACHED [runner 4/8] RUN adduser -S nextjs -u 1001 0.0s
=> CACHED [deps 2/5] RUN apk add --no-cache libc6-compat 0.0s
=> CACHED [deps 3/5] WORKDIR /app 0.0s
=> ERROR [deps 4/5] COPY package.json yarn.lock ./ 0.0s
------
> [deps 4/5] COPY package.json yarn.lock ./:
------
failed to compute cache key: "/yarn.lock" not found: not found
Expected Behavior
it should build the image with no error
To Reproduce
have Docker installed
run npx create-next-app --example with-docker myappname
run sudo docker build -t myappname .
NB : image build works when app gets created with yarn
instead of npx