Summary: | grub-efi не может загрузить загрузчик Windows /EFI/Microsoft/Boot/bootmgfw.efi | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Branch p9 | Reporter: | Евгений Кухтинов <kuhtinov_ev> | ||||||||||||||||||||||||
Component: | grub-efi | Assignee: | Николай Костригин <nickel> | ||||||||||||||||||||||||
Status: | CLOSED FIXED | QA Contact: | qa-p9 <qa-p9> | ||||||||||||||||||||||||
Severity: | blocker | ||||||||||||||||||||||||||
Priority: | P3 | CC: | asy, klark, kuhtinov_ev, mike, nickel | ||||||||||||||||||||||||
Version: | не указана | ||||||||||||||||||||||||||
Hardware: | all | ||||||||||||||||||||||||||
OS: | Linux | ||||||||||||||||||||||||||
Attachments: |
|
Description
Евгений Кухтинов
2019-08-15 13:47:06 MSK
После нажатия в меню на пункт загрузки загрузчика Windows ничего не происходит. А Secure Boot у Вас активирован? Если да, проверьте, пожалуйста, с отключенным. Да,Secure Boot отключен. UEFI грузит сам Windows Boot Manager если его выбрать в меню Boot UEFI вместо altlinux. Отдельно Windows загружается У меня на железе не воспроизвелось. Нормально загружается через chainloader. Можете выложить вывод: blkid lsblk -f ? А заодно модель устройства, на котором такая проблема вылезла и то, в каком порядке устанавливались системы: Windows "поверх" Linux или наоборот? Еще вопрос: такой вывод дает grub-mkconfig инсталлятора или запускали повторно после установки? ### BEGIN /etc/grub.d/30_os-prober ### WARNING: Failed to connect to lvmetad. Falling back to device scanning. Найден Windows Boot Manager на /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi menuentry 'Windows Boot Manager (на /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-efi-D822-9F4E' { savedefault insmod part_gpt insmod fat set root='hd0,gpt1' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 D822-9F4E else search --no-floppy --fs-uuid --set=root D822-9F4E fi chainloader /EFI/Microsoft/Boot/bootmgfw.efi } Если только во время установки генерился grub.cfg могу предложить его перегенерить или попробовать вручную выше приведенную секцию модифицировать (можно копипастом) к виду: ### BEGIN /etc/grub.d/30_os-prober ### WARNING: Failed to connect to lvmetad. Falling back to device scanning. Найден Windows Boot Manager на /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi menuentry 'Windows Boot Manager (на /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-efi-D822-9F4E' { savedefault insmod part_gpt insmod fat if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root D822-9F4E else search --no-floppy --fs-uuid --set=root D822-9F4E fi chainloader /EFI/Microsoft/Boot/bootmgfw.efi } В моем случае Windows устанавливался после Linux и grub-mkconfig запускался вручную. В grub.cfg в секцию os-prober у меня не попали : "set root='hd0,gpt1'" и "--hint-*=hd0,gpt1". Если такое исправление поможет, буду разбираться, в чем причина. (В ответ на комментарий №4) > У меня на железе не воспроизвелось. Нормально загружается через chainloader. > > Можете выложить вывод: > blkid > lsblk -f > ? > > А заодно модель устройства, на котором такая проблема вылезла и то, в каком > порядке устанавливались системы: Windows "поверх" Linux или наоборот? [root@comp-core-i7-3610qm-473dc9 ~]# blkid /dev/sda1: LABEL="SYSTEM" UUID="D822-9F4E" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="d21f8593-4ede-48c1-a37f-5b908f712a8d" /dev/sda2: PARTLABEL="Microsoft reserved partition" PARTUUID="7f5f9f8a-9bcf-433c-8583-0981a44a4a0a" /dev/sda3: LABEL="Windows" UUID="A0769BD4769BA994" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="3f8ef0c6-5b8f-451d-be81-c2f4f1e8d5cb" /dev/sda4: UUID="d94b5ee2-1d14-40c1-aaf1-510847e77c3b" TYPE="ext4" PARTUUID="9adf9487-8e10-6c44-b33c-4e695120ccd5" /dev/sda5: LABEL="/" UUID="2de9ba58-00c0-4e9d-b295-6a7f6469092f" TYPE="ext4" PARTUUID="e2eeb6dd-6eba-ce4a-865a-e33cb36d7986" /dev/sda6: LABEL="home" UUID="9511b083-9c4b-41dd-bd13-7510701434ad" TYPE="ext4" PARTUUID="f0836bf8-8284-4f43-ac27-1f4f6ec1b4d0" /dev/sda7: LABEL="media" UUID="56c77041-6365-406b-8a27-def2fb0cb8bd" TYPE="ext4" PARTUUID="fa88250a-9f0d-d743-8e25-50ee688c6b9b" /dev/sda8: UUID="1b55dbde-98fd-4352-8590-f52cbe4b7477" TYPE="swap" PARTUUID="5aa6c2b7-6d01-924d-999e-9528828306f2" [root@comp-core-i7-3610qm-473dc9 ~]# lsblk -f NAME FSTYPE LABEL UUID FSAVAIL FSUSE% MOUNTPOINT sda ├─sda1 vfat SYSTEM D822-9F4E 274,1M 7% /boot/efi ├─sda2 ├─sda3 ntfs Windows A0769BD4769BA994 ├─sda4 ext4 d94b5ee2-1d14-40c1-aaf1-510847e77c3b 55,3M 33% /boot ├─sda5 ext4 / 2de9ba58-00c0-4e9d-b295-6a7f6469092f 82,7G 10% / ├─sda6 ext4 home 9511b083-9c4b-41dd-bd13-7510701434ad 91,9G 1% /home ├─sda7 ext4 media 56c77041-6365-406b-8a27-def2fb0cb8bd └─sda8 swap 1b55dbde-98fd-4352-8590-f52cbe4b7477 [SWAP] sr0 ASUS N46VZ Linux ставилась поверх Windows. (В ответ на комментарий №5)
> Еще вопрос: такой вывод дает grub-mkconfig инсталлятора или запускали повторно
> после установки?
>
> ### BEGIN /etc/grub.d/30_os-prober ###
> WARNING: Failed to connect to lvmetad. Falling back to device scanning.
> Найден Windows Boot Manager на /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi
> menuentry 'Windows Boot Manager (на /dev/sda1)' --class windows --class os
> $menuentry_id_option 'osprober-efi-D822-9F4E' {
> savedefault
> insmod part_gpt
> insmod fat
> set root='hd0,gpt1'
> if [ x$feature_platform_search_hint = xy ]; then
> search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1
> --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 D822-9F4E
> else
> search --no-floppy --fs-uuid --set=root D822-9F4E
> fi
> chainloader /EFI/Microsoft/Boot/bootmgfw.efi
> }
>
> Если только во время установки генерился grub.cfg могу предложить его
> перегенерить или попробовать вручную выше приведенную секцию модифицировать
> (можно копипастом) к виду:
>
>
> ### BEGIN /etc/grub.d/30_os-prober ###
> WARNING: Failed to connect to lvmetad. Falling back to device scanning.
> Найден Windows Boot Manager на /dev/sda1@/EFI/Microsoft/Boot/bootmgfw.efi
> menuentry 'Windows Boot Manager (на /dev/sda1)' --class windows --class os
> $menuentry_id_option 'osprober-efi-D822-9F4E' {
> savedefault
> insmod part_gpt
> insmod fat
> if [ x$feature_platform_search_hint = xy ]; then
> search --no-floppy --fs-uuid --set=root D822-9F4E
> else
> search --no-floppy --fs-uuid --set=root D822-9F4E
> fi
> chainloader /EFI/Microsoft/Boot/bootmgfw.efi
> }
>
> В моем случае Windows устанавливался после Linux и grub-mkconfig запускался
> вручную.
> В grub.cfg в секцию os-prober у меня не попали : "set root='hd0,gpt1'" и
> "--hint-*=hd0,gpt1".
> Если такое исправление поможет, буду разбираться, в чем причина.
Такой конфиг дал инсталлятор, да и после когда перегенерил он оказался таким же.
Копипаст не помог.
Хотелось бы взглянуть на вывод: efibootmgr -v и содержимое загрузочной партиции EFI: NAME FSTYPE LABEL UUID FSAVAIL FSUSE% MOUNTPOINT sda ├─sda1 vfat SYSTEM D822-9F4E 274,1M 7% /boot/efi ls -alR /boot/efi и hexdump -C /boot/efi/EFI/MICROSOFT/BOOT/BCD возможно у Вас путь будет со строчными буквами, как и название файла (см : chainloader /EFI/Microsoft/Boot/bootmgfw.efi) Еще вопрос: какой образ использовался для установки OS ALT, - от этого зависит какой из инсталляторов использовался. Created attachment 8239 [details]
hexdump -C /boot/efi/EFI/Microsoft/Boot/BCD
1) [root@comp-core-i7-3610qm-473dc9 Bugs]# efibootmgr -v BootCurrent: 0001 Timeout: 0 seconds BootOrder: 0001,0000,0002 Boot0000 Windows Boot Manager HD(1,GPT,d21f8593-4ede-48c1-a37f-5b908f712a8d,0x800,0x96000)/File(\EFI\Microsoft\Boot\bootmgfw.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.}...3................ Boot0001* altlinux HD(1,GPT,d21f8593-4ede-48c1-a37f-5b908f712a8d,0x800,0x96000)/File(\EFI\altlinux\shimx64.efi) Boot0002 CD/DVD Drive BBS(CDROM,,0x0)AMGOAMNO........o.H.L.-.D.T.-.S.T. .D.V.D.R.A.M. .G.T.7.0.N....................A...........................>..Gd-.;.A..MQ..L.Z.K.C.O.B.A.4.9.2.8. .6. . . . . . . . ......AMBO 2) [root@comp-core-i7-3610qm-473dc9 Bugs]# ls -alR /boot/efi /boot/efi: итого 9 drwxrwxrwx 3 root root 4096 янв 1 1970 . drwx------ 6 root root 1024 авг 15 23:01 .. drwxrwxrwx 5 root root 4096 авг 10 18:01 EFI -rw-rw-rw- 1 root root 0 авг 10 18:06 _INSTALELR_TEST_FILE_ /boot/efi/EFI: итого 20 drwxrwxrwx 5 root root 4096 авг 10 18:01 . drwxrwxrwx 3 root root 4096 янв 1 1970 .. drwxrwxrwx 2 root root 4096 авг 15 17:43 altlinux drwxrwxrwx 2 root root 4096 авг 2 04:46 Boot drwxrwxrwx 4 root root 4096 авг 2 04:41 Microsoft /boot/efi/EFI/altlinux: итого 3820 drwxrwxrwx 2 root root 4096 авг 15 17:43 . drwxrwxrwx 5 root root 4096 авг 10 18:01 .. -rw-rw-rw- 1 root root 357576 авг 10 12:00 fbx64.efi -rw-rw-rw- 1 root root 121 авг 15 17:42 grub.cfg -rw-rw-rw- 1 root root 147 авг 15 17:43 grub.cfg.old -rw-rw-rw- 1 root root 1169080 авг 10 12:00 grubx64.efi -rw-rw-rw- 1 root root 1159888 авг 10 12:00 mmx64.efi -rw-rw-rw- 1 root root 1200032 авг 10 12:00 shimx64.efi /boot/efi/EFI/Boot: итого 728 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 5 root root 4096 авг 10 18:01 .. -rw-rw-rw- 1 root root 736488 окт 13 2018 bootx64.efi /boot/efi/EFI/Microsoft: итого 16 drwxrwxrwx 4 root root 4096 авг 2 04:41 . drwxrwxrwx 5 root root 4096 авг 10 18:01 .. drwxrwxrwx 26 root root 4096 авг 20 20:34 Boot drwxrwxrwx 2 root root 4096 авг 2 04:46 Recovery /boot/efi/EFI/Microsoft/Boot: итого 2328 drwxrwxrwx 26 root root 4096 авг 20 20:34 . drwxrwxrwx 4 root root 4096 авг 2 04:41 .. -rw-rw-rw- 1 root root 28672 авг 18 17:18 BCD -rw-rw-rw- 1 root root 32768 авг 18 17:18 BCD.LOG -rw-rw-rw- 1 root root 0 авг 2 04:46 BCD.LOG1 -rw-rw-rw- 1 root root 0 авг 2 04:46 BCD.LOG2 -rw-rw-rw- 1 root root 736488 окт 13 2018 bootmgfw.efi -rw-rw-rw- 1 root root 733416 окт 13 2018 bootmgr.efi -rw-rw-rw- 1 root root 65536 авг 2 04:46 BOOTSTAT.DAT drwxrwxrwx 2 root root 4096 авг 2 04:46 cs-CZ drwxrwxrwx 2 root root 4096 авг 2 04:46 da-DK drwxrwxrwx 2 root root 4096 авг 2 04:46 de-DE drwxrwxrwx 2 root root 4096 авг 2 04:46 el-GR drwxrwxrwx 2 root root 4096 авг 2 04:46 en-US drwxrwxrwx 2 root root 4096 авг 2 04:46 es-ES drwxrwxrwx 2 root root 4096 авг 2 04:46 fi-FI drwxrwxrwx 2 root root 4096 авг 2 04:46 Fonts drwxrwxrwx 2 root root 4096 авг 2 04:46 fr-FR drwxrwxrwx 2 root root 4096 авг 2 04:46 hu-HU drwxrwxrwx 2 root root 4096 авг 2 04:46 it-IT drwxrwxrwx 2 root root 4096 авг 2 04:46 ja-JP drwxrwxrwx 2 root root 4096 авг 2 04:46 ko-KR -rw-rw-rw- 1 root root 674536 окт 13 2018 memtest.efi drwxrwxrwx 2 root root 4096 авг 2 04:46 nb-NO drwxrwxrwx 2 root root 4096 авг 2 04:46 nl-NL drwxrwxrwx 2 root root 4096 авг 2 04:46 pl-PL drwxrwxrwx 2 root root 4096 авг 2 04:46 pt-BR drwxrwxrwx 2 root root 4096 авг 2 04:46 pt-PT drwxrwxrwx 2 root root 4096 авг 2 04:46 ru-RU drwxrwxrwx 2 root root 4096 авг 2 04:46 sv-SE drwxrwxrwx 2 root root 4096 авг 2 04:46 tr-TR drwxrwxrwx 2 root root 4096 авг 2 04:46 zh-CN drwxrwxrwx 2 root root 4096 авг 2 04:46 zh-HK drwxrwxrwx 2 root root 4096 авг 2 04:46 zh-TW /boot/efi/EFI/Microsoft/Boot/cs-CZ: итого 176 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 89168 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 81920 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/da-DK: итого 176 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 87632 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 80384 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/de-DE: итого 184 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 91712 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 84480 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/el-GR: итого 192 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 94784 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 87552 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/en-US: итого 168 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 85056 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 77824 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/es-ES: итого 184 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 90176 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 82944 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/fi-FI: итого 176 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 89152 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 81920 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/Fonts: итого 11708 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 3694080 июн 11 2009 chs_boot.ttf -rw-rw-rw- 1 root root 3876772 июн 11 2009 cht_boot.ttf -rw-rw-rw- 1 root root 1984228 июн 11 2009 jpn_boot.ttf -rw-rw-rw- 1 root root 2371360 июн 11 2009 kor_boot.ttf -rw-rw-rw- 1 root root 47452 июн 11 2009 wgl4_boot.ttf /boot/efi/EFI/Microsoft/Boot/fr-FR: итого 184 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 93248 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 86016 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/hu-HU: итого 184 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 90688 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 83456 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/it-IT: итого 184 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 90704 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 83456 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/ja-JP: итого 152 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 76368 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 69120 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/ko-KR: итого 152 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 75328 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 68096 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/nb-NO: итого 176 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 88128 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 80896 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/nl-NL: итого 184 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 90704 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 83456 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/pl-PL: итого 184 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 90704 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 83456 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/pt-BR: итого 184 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 90192 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 82944 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/pt-PT: итого 180 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 89680 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 82432 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/ru-RU: итого 228 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 90192 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 82944 июл 14 2009 bootmgr.efi.mui -rw-rw-rw- 1 root root 43600 апр 12 2011 memtest.efi.mui /boot/efi/EFI/Microsoft/Boot/sv-SE: итого 176 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 87616 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 80384 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/tr-TR: итого 176 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 87120 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 79872 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/zh-CN: итого 144 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 70720 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 63488 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/zh-HK: итого 144 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 70224 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 62976 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Boot/zh-TW: итого 144 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 26 root root 4096 авг 20 20:34 .. -rw-rw-rw- 1 root root 70208 июл 14 2009 bootmgfw.efi.mui -rw-rw-rw- 1 root root 62976 июл 14 2009 bootmgr.efi.mui /boot/efi/EFI/Microsoft/Recovery: итого 32 drwxrwxrwx 2 root root 4096 авг 2 04:46 . drwxrwxrwx 4 root root 4096 авг 2 04:41 .. -rw-rw-rw- 1 root root 12288 авг 2 04:46 BCD -rw-rw-rw- 1 root root 12288 авг 2 04:46 BCD.LOG -rw-rw-rw- 1 root root 0 авг 2 04:46 BCD.LOG1 -rw-rw-rw- 1 root root 0 авг 2 04:46 BCD.LOG2 3) Смотри в предыдущем вложении 4) Образ был скачал отсюда: http://mirror.yandex.ru/altlinux/p9/images/kworkstation/x86_64/alt-kworkstation-8.90-beta20190805-install-x86_64.iso Ваша ситуация кажется мне странной, т.к. Вы сообщаете, что из UEFI Windows загружается: (В ответ на комментарий №3) > Да,Secure Boot отключен. UEFI грузит сам Windows Boot Manager если его выбрать > в меню Boot UEFI вместо altlinux. Отдельно Windows загружается при этом по показаниям "efibootmgr -v" у Вас только одна запись отвечающая за "Windows Boot Manager" и grub-mkconfig ее находит в секции 30-os-prober. В такой ситуации у меня стабильно загружается Windows как через UEFI Boot menu, так и через grub-2.02-alt17. Тем не менее, чтобы исключить ситуацию когда у Вас содержимое конфигурационного файла загрузчика Windows (EFI\Microsoft\Boot\BCD) по какой-либо причине испорчено, я попробовал следующее (___не повторяйте буквально, делайте копии директорий EFI/{....} на случай необходимости откатиться в исходное состояние___): 1. Полностью удалил /boot/efi/EFI/{Microsoft,Boot,OEM}, оставив только /boot/efi/EFI/altlinux 2. Выполнил восстановление загрузчика Windows по инструкции [1] Я не заметил имела ли изначально партиция содержащая установленную Windows директории {EFI,Boot,OEM}, но после процедуры они появились именно там, а не на FAT партиции UEFI. 3. На этом этапе запуск Windows возможен только через UEFI Boot menu, т.к. выполнение update-grub не обнаруживает "Windows Boot Manager" расположенный на NTFS партиции. 4. Скопировал с NTFS партиции Windows директорию EFI/{Boot,Microsoft} на FAT партицию. После этого update-grub находит "Windows Boot Manager" и он успешно загружается через chainloader. Описал кратко только основные шаги, если по каким-то пунктам нужны уточнения - дайте знать. [1] http://winitpro.ru/index.php/2014/03/20/repair-bootloader-windows-8-uefi/ Версия grub: [root@comp-core-i7-3610qm-473dc9 ~]# rpm -qa | grep grub-efi grub-efi-2.02-alt17.x86_64 Т.е вы не нашли ничего криминального? Можно дамп вашего BCD? Created attachment 8240 [details]
Сравнение дампов BCD проблемной системы с беспроблемной
(В ответ на комментарий №12) > Версия grub: > > [root@comp-core-i7-3610qm-473dc9 ~]# rpm -qa | grep grub-efi > grub-efi-2.02-alt17.x86_64 > > Т.е вы не нашли ничего криминального? Можно дамп вашего BCD? Если кратко, то да, ничего криминального в предоставленных данных я (на своем уровне понимания проблемы) не увидел. Проблемы с EFI часто связаны с большим количеством записей в NVRAM, когда кривая прошивка EFI не может дописать очередной пункт. Но у Вас их всего 3, проблем здесь быть не должно. Выхлоп efibootmgr -v в случае с Boot0000 Windows Boot Manager HD(1,GPT,d21f8593-4ede-48c1-a37f-5b908f712a8d,0x800,0x96000)/File(\EFI\Microsoft\Boot\bootmgfw.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.}...3................ отсылает к партиции c существующим UUID, более того на ней есть все (или почти все, не сравнивал досконально содержимое директорий с mui) файлы, что и на референсной рабочей системе. Запись с UUID, на которую ссылается "B.C.D.O.B.J.E.C.T.=" в дампе BCD имеет "ответный" 000067e0 01 00 00 00 01 00 00 00 45 6c 65 6d 65 6e 74 00 |........Element.| 000067f0 20 00 00 00 48 00 61 00 72 00 64 00 20 00 44 00 | ...H.a.r.d. .D.| 00006800 72 00 69 00 76 00 65 00 20 00 00 00 01 02 00 00 |r.i.v.e. .......| 00006810 f0 07 00 00 7b 00 39 00 64 00 65 00 61 00 38 00 |....{.9.d.e.a.8.| 00006820 36 00 32 00 63 00 2d 00 35 00 63 00 64 00 64 00 |6.2.c.-.5.c.d.d.| 00006830 2d 00 34 00 65 00 37 00 30 00 2d 00 61 00 63 00 |-.4.e.7.0.-.a.c.| Формат этого файла я не знаю, bcdedit в случае моего BCD вывел следующее: <84>¨á¯¥âç¥à § £à㧪¨ Windows -------------------- ¨¤¥â¨ä¨ª â®à {bootmgr} device partition=C: path \EFI\MICROSOFT\BOOT\BOOTMGFW.EFI description Windows Boot Manager locale ru-ru inherit {globalsettings} default {current} resumeobject {bec941c7-c3ce-11e9-b1d8-c58ee2a7ae26} displayorder {current} toolsdisplayorder {memdiag} timeout 30 <87> £à㧪 Windows ------------------- ¨¤¥â¨ä¨ª â®à {current} device partition=C: path \Windows\system32\winload.efi description Windows 10 locale ru-ru inherit {bootloadersettings} isolatedcontext Yes allowedinmemorysettings 0x15000075 osdevice partition=C: systemroot \Windows resumeobject {bec941c7-c3ce-11e9-b1d8-c58ee2a7ae26} nx OptIn bootmenupolicy Standard при этом {bec941c7-c3ce-11e9-b1d8-c58ee2a7ae26} не имеет отношения к имеющимся на моей машине партициям: /dev/mmcblk0: PTUUID="fb308114-f2a9-f14e-bdee-182d181b0232" PTTYPE="gpt" /dev/mmcblk0p1: SEC_TYPE="msdos" UUID="9E15-93D3" TYPE="vfat" PARTUUID="21476f3c-eed4-3347-bba1-2ac746f8fada" /dev/mmcblk0p2: PARTUUID="19c8db25-f408-6247-a7cf-79ee3fa42845" /dev/mmcblk0p3: UUID="a658d251-b6f5-41f6-be78-ca614f8c2fb5" TYPE="ext4" PARTUUID="a87139ae-73d5-fb4b-9497-a13407757232" /dev/mmcblk0p4: PARTLABEL="Microsoft reserved partition" PARTUUID="b90dd782-f27d-4ebd-9633-7f9aa95b60df" /dev/mmcblk0p5: LABEL="Local Disk" UUID="7C10E8AE10E87096" TYPE="ntfs" PTUUID="73736572" PTTYPE="dos" PARTLABEL="Basic data partition" PARTUUID="6f786f81-98e5-43f0-ab93-c477ec975fc9" Было бы хорошо сравнить на какие партиции ведут эти записи, но пересечений с UUID ваших дисков и партиций я также не обнаружил. Возможно это ссылки на другие EFI-переменные, нужно копать дальше. Я бы порекомендовал Вам обновить "BIOS\UEFI" ноутбука, но ни на русскоязычном, ни ка глобальном сайте Asus не нашел обновления для указанной модели. В качестве варианта решения все же остается удаление и создание заново BCD по приведенной ранее инструкции. Если есть возможность запустить EFI-shell (из UEFI самого ноутбука или с загрузочной флэшки ALT K Workstation 9 Beta), можно проверить работоспособность EFI бинарника, на который ссылается grub.cfg: chainloader /EFI/Microsoft/Boot/bootmgfw.efi После запуска EFI-shell команда map покажет alias для обрращения к конкретным доступным партициям. Дальше я предполагаю, что Ваша EFI-партиция замаппилась как fs0 (если нет, попробуйте fs1,2...) fs0: cd EFI\Microsoft\Boot bootmgfw.efi Тут должна загрузиться Windows... Ну, и чтобы проверить доступность модуля chainloader в момент загрузки нажимаем "с" в момент загрузки grub, чтобы попасть в консоль. Выполняем команду: chainloader без аргументов должно ругнуться: "ошибка: ожидается имя файла" Также можно убедиться в том, что модули part_gpt и fat загружены выполнив lsmod После этого убеждаемся, что search находит нужную партицию: search -n -u --set=root D822-9F4E после этого, набрав chainloader и нажимая "Tab", должны видеть, что предлагаемый автодополнением путь ведет к искомому /EFI/Microsoft/Boot/bootmgfw.efi. Выполнение должно привести к запуску Windows. Однако не приводит... Похоже, пока писал инструкцию, нашел, как воспроизвести Вашу ситуацию. Видимо, загрузка модуля консоли, или, возможно, любого другого, приводит к заполнению памяти и chainloader без сообщений об ошибках перестает работать: в режиме консоли он возвращается в консоль после запуска, а в режиме normal при выборе "Windows Boot Manager" наглухо подвисает. При этом если не вызывать консоль выбор "Windows Boot Manager" загружает Windows в 100% случаев. (В ответ на комментарий №0) > savedefault > insmod part_gpt > insmod fat > set root='hd0,gpt1' > if [ x$feature_platform_search_hint = xy ]; then > search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 > --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 D822-9F4E > else > search --no-floppy --fs-uuid --set=root D822-9F4E > fi set pager=1 set debug=chain > chainloader /EFI/Microsoft/Boot/bootmgfw.efi В меню выбора опций загрузки grub нажмите, пожалуйста, "e", добавьте, отладочные опции, запустите на выполнение нажатем "F10" и поэкранно, фотографиями, опубликуйте вывод... Created attachment 8242 [details] efi-shell_1 >После запуска EFI-shell команда map покажет alias для обрращения к конкретным доступным партициям. >Дальше я предполагаю, что Ваша EFI-партиция замаппилась как fs0 (если нет, попробуйте fs1,2...) >fs0: >cd EFI\Microsoft\Boot >bootmgfw.efi >Тут должна загрузиться Windows... EFI-партиция замаппилась как fs1. Windows загрузилась. Created attachment 8243 [details]
efi-shell_2
В продолжении предыдущего поста.
Created attachment 8244 [details] grub_shell_1 >Ну, и чтобы проверить доступность модуля chainloader в момент загрузки нажимаем "с" в момент загрузки grub, чтобы попасть в консоль. >Выполняем команду: >chainloader >без аргументов должно ругнуться: "ошибка: ожидается имя файла" >Также можно убедиться в том, что модули part_gpt и fat загружены выполнив lsmod >После этого убеждаемся, что search находит нужную партицию: >search -n -u --set=root D822-9F4E >после этого, набрав chainloader и нажимая "Tab", должны видеть, что предлагаемый автодополнением путь ведет к искомому /EFI/Microsoft/Boot/bootmgfw.efi. >Выполнение должно привести к запуску Windows. Команда chainloader сработала как вы и описали. Вывод команды lsmod показал что модули part_gpt и fat загружены. А вот вывод команды search -n -u --set=root D822-9F4E ничего не показал, и далее команда chainloader не стала автодополняться путем до bootmgfw.efi по клавише Tab как вы описали. Created attachment 8245 [details]
grub_shell_2
В продолжении предыдущего поста.
Created attachment 8246 [details] grub_debug_1 >В меню выбора опций загрузки grub нажмите, пожалуйста, "e", >добавьте, отладочные опции, запустите на выполнение нажатем "F10" и поэкранно, >фотографиями, опубликуйте вывод... Cм.вложение Created attachment 8247 [details]
grub_debug_2
В продолжении предыдущего поста.
Created attachment 8248 [details]
grub_debug_3
В продолжении предыдущего поста.
Created attachment 8249 [details]
grub_debug_4
В продолжении предыдущего поста.
А далее grub просто глухо висит. Помогает только выключение ноутбука с кнопки. Евгений, попробуйте решение, описанное здесь: https://itsfoss.com/no-grub-windows-linux/ Евгений, акутальна ли для Вас еще описанная проблема? Применяли ли вы варианты решения из [1] и/или [2]? Помогли ли они решить проблему? Если проблема актуальна и предложенные решения не помогли, попробуйте, пожалуйста обновить grub до релиза alt23 из задания #245612 и протестируйте загрузку Windows и c включенным Secure Boot, и с отключенным Secure Boot. [1] https://bugzilla.altlinux.org/show_bug.cgi?id=37112#c11 [2] https://bugzilla.altlinux.org/show_bug.cgi?id=37112#c26 Простите за длительное молчание. Да поблема актуальна. Пробовал оба рецепта. Проблема 99% не в BCD и не в bootmgfw.efi. Прикладываю еще один скриншот с отдпдкой запуска chainloader. Created attachment 8799 [details]
chain_debug.jpg
Продолжим? Вот похожая проблема: https://bugzilla.redhat.com/show_bug.cgi?id=1347291#c62 Полагаю это нужный патч: https://bugzilla.redhat.com/attachment.cgi?id=1222983&action=diff (Ответ для Евгений Кухтинов на комментарий #30) > Продолжим? Конечно. Спасибо, что не сдаетесь. (Ответ для Евгений Кухтинов на комментарий #32) > Полагаю это нужный патч: > > https://bugzilla.redhat.com/attachment.cgi?id=1222983&action=diff Спасибо. Пока нет возможности вникнуть и потестировать самому. Приложил патч и отправил на сборку в тестовом задании 252036. Потестируете? Да. Согласен. [root@comp-core-i7-3610qm-473dc9 ~]# apt-repo test 252036 Получено: 1 http://mirror.yandex.ru p9/branch/x86_64 release [1948B] Получено: 2 http://mirror.yandex.ru p9/branch/x86_64-i586 release [1175B] Получено: 3 http://mirror.yandex.ru p9/branch/noarch release [1539B] Получено: 4 http://git.altlinux.org repo/252036/x86_64 release [555B] Получено 5217B за 0s (24,4kB/s). Получено: 1 http://git.altlinux.org repo/252036/x86_64/task pkglist [8844B] Получено: 2 http://mirror.yandex.ru p9/branch/x86_64/classic pkglist [19,1MB] Получено: 3 http://git.altlinux.org repo/252036/x86_64/task release [138B] Получено: 4 http://mirror.yandex.ru p9/branch/x86_64/classic release [135B] Получено: 5 http://mirror.yandex.ru p9/branch/x86_64-i586/classic pkglist [14,1MB] Получено: 6 http://mirror.yandex.ru p9/branch/x86_64-i586/classic release [140B] Получено: 7 http://mirror.yandex.ru p9/branch/noarch/classic pkglist [5294kB] Получено: 8 http://mirror.yandex.ru p9/branch/noarch/classic release [135B] Получено 38,6MB за 11s (3274kB/s). Чтение списков пакетов... Завершено Построение дерева зависимостей... Завершено Чтение списков пакетов... Завершено Построение дерева зависимостей... Завершено E: Невозможно найти пакет grub-ieee1275 (Ответ для Евгений Кухтинов на комментарий #35) > [root@comp-core-i7-3610qm-473dc9 ~]# apt-repo test 252036 > Получено: 1 http://mirror.yandex.ru p9/branch/x86_64 release [1948B] > Получено: 2 http://mirror.yandex.ru p9/branch/x86_64-i586 release [1175B] > Получено: 3 http://mirror.yandex.ru p9/branch/noarch release [1539B] > Получено: 4 http://git.altlinux.org repo/252036/x86_64 release [555B] > Получено 5217B за 0s (24,4kB/s). > Получено: 1 http://git.altlinux.org repo/252036/x86_64/task pkglist [8844B] > Получено: 2 http://mirror.yandex.ru p9/branch/x86_64/classic pkglist [19,1MB] > Получено: 3 http://git.altlinux.org repo/252036/x86_64/task release [138B] > Получено: 4 http://mirror.yandex.ru p9/branch/x86_64/classic release [135B] > Получено: 5 http://mirror.yandex.ru p9/branch/x86_64-i586/classic pkglist > [14,1MB] > Получено: 6 http://mirror.yandex.ru p9/branch/x86_64-i586/classic release > [140B] > > Получено: 7 http://mirror.yandex.ru p9/branch/noarch/classic pkglist > [5294kB] > > Получено: 8 http://mirror.yandex.ru p9/branch/noarch/classic release [135B] > > Получено 38,6MB за 11s (3274kB/s). > > Чтение списков пакетов... Завершено > Построение дерева зависимостей... Завершено > Чтение списков пакетов... Завершено > Построение дерева зависимостей... Завершено > E: Невозможно найти пакет grub-ieee1275 попробуйте по инструкции https://www.altlinux.org/Карманы: apt-repo add 252036 apt-get update apt-get dist-upgrade Патч помог. Проблема решена. Windows 7 x64 UEFI прекрасно загрузилась из меню grub. Благодарю за помощь. (Ответ для Евгений Кухтинов на комментарий #37) > Патч помог. Проблема решена. Windows 7 x64 UEFI прекрасно загрузилась из > меню grub. Благодарю за помощь. Спасибо за помощь, отправлю пакет на дополнительное тестирование в отдел QA. Если все будет нормально, - ожидайте в репозитории. grub-2.02-alt27 -> sisyphus: Thu May 21 2020 Nikolai Kostrigin <nickel@altlinux> 2.02-alt27 - add fedora-efi-chainloader-truncate-relocation patch (closes: #37112) (In reply to nickel@altlinux.org from comment #15) > Видимо, загрузка модуля консоли, или, возможно, любого другого, приводит к > заполнению памяти и chainloader без сообщений об ошибках перестает работать: > в режиме консоли он возвращается в консоль после запуска, а в режиме normal > при выборе "Windows Boot Manager" наглухо подвисает. Что-то у меня сейчас такая же ситуация. С той разницей, что в режиме normal не виснет, а возвращается в меню Grub. grub-pc/grub-efi 2.02-alt29.qa3.x86_64. Windows только 10, с bootmgfw.efi 1527600 b. А какой размер bootmgfw.efi раньше был? (In reply to Sergey Y. Afonin from comment #40) > Windows только 10, с bootmgfw.efi 1527600 b. А какой размер bootmgfw.efi раньше был? Что-то я Comment 10 пропустил. Получается, что у Win 7 размер от 77K до 91K в зависимости от локализации. (In reply to Sergey Y. Afonin from comment #41) > Что-то я Comment 10 пропустил. Получается, что у Win 7 размер от 77K до 91K > в зависимости от локализации. Ой, что0то не так посмотрел, почему-то на bootmgfw.efi.mui. 736488 bootmgfw.efi, но меньше всё равно. (In reply to Sergey Y. Afonin from comment #40) > Что-то у меня сейчас такая же ситуация. С той разницей, что в режиме normal > не виснет, а возвращается в меню Grub. завёл отдельный bug 40227 |