LINUX.ORG.RU

Как добавить windows в загрузчик manjaro.

 


0

1

Поставил сначала windows. Потом на неразмеченное пространство поставил manjaro. Когда загружаю компьютер могу продолжить только загрузку с manjaro. Загрузчик windwos будто пропал.

Как сделать так, чтобы при загрузке компьютера я могу выбрать между двумя системами?

upd

Вот что появляется после включения компьютера. https://ibb.co/BcLYj8H

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

Вот фотография вкладки boot в биосе. https://ibb.co/8cwKZxQ

В компе 2 диска. На одном коренль линуха, на втором хомяк линуха + винда



Последнее исправление: mayar (всего исправлений: 1)

В /etc/default/grub добавь или поменяй строку GRUB_DISABLE_OS_PROBER="false".

Затем, чтобы применить изменения, используй команду: grub-mkconfig -o /boot/grub/grub.cfg

Подробнее тут: https://wiki.archlinux.org/title/GRUB_(Русский)

Aceler ★★★★★
()
Последнее исправление: Aceler (всего исправлений: 1)

А вообще, если у тебя EFI, то у EFI есть собственное меню выбора загрузки, и можно пользоваться им.

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

У меня она и так уже стоит.

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

Вот фотография вкладки boot в биосе. https://ibb.co/8cwKZxQ

mayar
() автор топика

Попробуй при загрузке вызвать «Boot menu» - это обычно F11 или F12. Если там есть запись для виндовс, то приоритет, что загружать по умолчанию можно будет в BIOS.

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

И мне каждый раз надо будет заходить в boot menu и менять?

А там случайно не копия того что я скинул выше. boot вкладка биоса. Меня смущает, что там всего одна строка.

https://ibb.co/8cwKZxQ

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

У меня она и так уже стоит.

Кто она? Эта строка?

Покажи вывод терминала от команды grub2-mkconfig, посмотрим.

Или ты как-то не так поставил Linux и снёс Windows, раз Grub её не определяет.

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

И мне каждый раз надо будет заходить в boot menu и менять?

А в чём проблема? Я так делаю, мне нравится. По умолчанию грузится Linux, если захотелось поиграться — удерживаешь F11 при загрузке и грузишь винду.

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

А там случайно не копия того что я скинул выше. boot вкладка биоса. Меня смущает, что там всего одна строка.

Это не boot меню. Это выбор устройства, а нужен выбор загрузчика операционной системы. Попробуй подержать F11 или F12 при запуске.

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

Да, там стоит эта переменная с флагом false.

grub2-mkconfig - не распознаётся.

ввёл grub-mkconfig

Found linux image: /boot/vmlinuz-5.15-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-5.15-x86_64.img
menuentry 'Manjaro Linux' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-6d48f17d-da78-4e53-a843-e2b761187826' {
        savedefault
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_gpt
        insmod ext2
        set root='hd0,gpt3'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  6d48f17d-da78-4e53-a843-e2b761187826
        else
          search --no-floppy --fs-uuid --set=root 6d48f17d-da78-4e53-a843-e2b761187826
        fi
        linux   /boot/vmlinuz-5.15-x86_64 root=UUID=6d48f17d-da78-4e53-a843-e2b761187826 rw  quiet resume=UUID=fd03cc1a-1527-4bcf-8408-054b03e2ff76 udev.log_priority=3
        initrd  /boot/intel-ucode.img /boot/initramfs-5.15-x86_64.img
}
submenu 'Advanced options for Manjaro Linux' $menuentry_id_option 'gnulinux-advanced-6d48f17d-da78-4e53-a843-e2b761187826' {
        menuentry 'Manjaro Linux (Kernel: 5.15.85-1-MANJARO x64)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.15.85-1-MANJARO x64-advanced-6d48f17d-da78-4e53-a843-e2b761187826' {
        savedefault
                load_video
                set gfxpayload=keep
                insmod gzio
                insmod part_gpt
                insmod ext2
                set root='hd0,gpt3'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  6d48f17d-da78-4e53-a843-e2b761187826
                else
                  search --no-floppy --fs-uuid --set=root 6d48f17d-da78-4e53-a843-e2b761187826
                fi
                linux   /boot/vmlinuz-5.15-x86_64 root=UUID=6d48f17d-da78-4e53-a843-e2b761187826 rw  quiet resume=UUID=fd03cc1a-1527-4bcf-8408-054b03e2ff76 udev.log_priority=3
                initrd  /boot/intel-ucode.img /boot/initramfs-5.15-x86_64.img
        }
Found initrd fallback image: /boot/initramfs-5.15-x86_64-fallback.img
        menuentry 'Manjaro Linux (Kernel: 5.15.85-1-MANJARO x64 - fallback initramfs)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.15.85-1-MANJARO x64-fallback-6d48f17d-da78-4e53-a843-e2b761187826' {
                load_video
                set gfxpayload=keep
                insmod gzio
                insmod part_gpt
                insmod ext2
                set root='hd0,gpt3'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  6d48f17d-da78-4e53-a843-e2b761187826
                else
                  search --no-floppy --fs-uuid --set=root 6d48f17d-da78-4e53-a843-e2b761187826
                fi
                linux   /boot/vmlinuz-5.15-x86_64 root=UUID=6d48f17d-da78-4e53-a843-e2b761187826 rw  quiet resume=UUID=fd03cc1a-1527-4bcf-8408-054b03e2ff76 udev.log_priority=3
                initrd  /boot/initramfs-5.15-x86_64-fallback.img
        }
Found linux image: /boot/vmlinuz-4.19-x86_64
Found initrd image: /boot/intel-ucode.img /boot/initramfs-4.19-x86_64.img
        menuentry 'Manjaro Linux (Kernel: 4.19.269-1-MANJARO x64)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.19.269-1-MANJARO x64-advanced-6d48f17d-da78-4e53-a843-e2b761187826' {
        savedefault
                load_video
                set gfxpayload=keep
                insmod gzio
                insmod part_gpt
                insmod ext2
                set root='hd0,gpt3'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  6d48f17d-da78-4e53-a843-e2b761187826
                else
                  search --no-floppy --fs-uuid --set=root 6d48f17d-da78-4e53-a843-e2b761187826
                fi
                linux   /boot/vmlinuz-4.19-x86_64 root=UUID=6d48f17d-da78-4e53-a843-e2b761187826 rw  quiet resume=UUID=fd03cc1a-1527-4bcf-8408-054b03e2ff76 udev.log_priority=3
                initrd  /boot/intel-ucode.img /boot/initramfs-4.19-x86_64.img
        }
Found initrd fallback image: /boot/initramfs-4.19-x86_64-fallback.img
        menuentry 'Manjaro Linux (Kernel: 4.19.269-1-MANJARO x64 - fallback initramfs)' --class manjaro --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.19.269-1-MANJARO x64-fallback-6d48f17d-da78-4e53-a843-e2b761187826' {
                load_video
                set gfxpayload=keep
                insmod gzio
                insmod part_gpt
                insmod ext2
                set root='hd0,gpt3'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  6d48f17d-da78-4e53-a843-e2b761187826
                else
                  search --no-floppy --fs-uuid --set=root 6d48f17d-da78-4e53-a843-e2b761187826
                fi
                linux   /boot/vmlinuz-4.19-x86_64 root=UUID=6d48f17d-da78-4e53-a843-e2b761187826 rw  quiet resume=UUID=fd03cc1a-1527-4bcf-8408-054b03e2ff76 udev.log_priority=3
                initrd  /boot/initramfs-4.19-x86_64-fallback.img
        }
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
Adding boot menu entry for UEFI Firmware Settings ...
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
        fwsetup
}
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/35_fwupd ###
### END /etc/grub.d/35_fwupd ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###

### BEGIN /etc/grub.d/41_snapshots-btrfs ###
Root filesystem isn't btrfs
If you think an error has occurred, please file a bug report at "https://github.com/Antynea/grub-btrfs"
### END /etc/grub.d/41_snapshots-btrfs ###

### BEGIN /etc/grub.d/60_memtest86+ ###
Found memtest86+ image: /boot/memtest86+/memtest.bin
if [ "${grub_platform}" == "pc" ]; then
    menuentry "Memory Tester (memtest86+)" --class memtest86 --class gnu --class tool {
        search --fs-uuid --no-floppy --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  6d48f17d-da78-4e53-a843-e2b761187826
        linux16 /boot/memtest86+/memtest.bin 
    }
fi
### END /etc/grub.d/60_memtest86+ ###


mayar
() автор топика
Ответ на: комментарий от Aceler

Проблемы нет. Через 2 минуты попробую

mayar
() автор топика
Ответ на: комментарий от mayar
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.

Эта запись свидетельствует о том, что os_prober запустился и никакой Windows у тебя не нашёл.

А это, в свою очередь, может означать, что ты как-то не так поставил Linux и снёс Windows.

Так что тебе сначала надо спасти Windows. Гугли восстановление загрузчика Windows, эта тема уже выходит за рамки нашего форума.

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

Странно. Может всё таки снёсся загрузчик виндовс. Так как я могу из linux получить доступ к файлам windows и там вроде всё впорядке

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

Да, значит загрузчик Windows слетел совсем. Возможно, ты отформатировал раздел EFI, возможно что-то ещё — мне отсюда не видно. Восстанови загрузчик Windows при помощи установочного носителя Windows, после этого загрузись в Linux и сделай grub2-mkconfig, должно сработать.

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

Товарищи, хватит. У человека UEFI, а не BIOS. Там загрузчики — это файлы на FAT32 EFI разделе, ему нужно просто в меню загрузки UEFI его выбрать. И именно поэтому os-brober более не нужен, так как нет необходимости держать записи о каждой ОС в GRUB2, потому что UEFI сам в состоянии это сделать.

Но почему-то каждое обсуждение загрузки или дуалбута на ЛОРе превращается в бесконечный поток 4.2 и ложных советов которые уже неактуальны, так как сейчас UEFI, а не BIOS!!!

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 2)
Ответ на: комментарий от mayar

Да какая нафиг помощь. Он тебе дезинформации гору навалил.

Покажи выводы:

sudo efibootmgr -v
find /boot/efi -type d -i 'microsoft' -exec ls -laR {} \;

Скорее всего, у тебя с загрузчиком Windows всё в норме, просто он ниже приоритетом, чем Linux.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

А ты читал, что мы тут обсуждали? Ему два раза предложили использовать загрузку через EFI. Перечитай, посчитай.

ему нужно просто в меню загрузки UEFI его выбрать.

Три раза.

И он в меню загрузки нашёл только два пункта и оба ведут в GRUB.

именно поэтому os-brober более не нужен

Тем не менее, он у него включён, но не работает. Более того, выбирать ОС удобнее в GRUB, а не в EFI. Человек хочет добавить меню в GRUB, а не в EFI.

Ну а дальше разбирайся как хочешь, только перестань нести чушь про 4.2 и ложные советы.

Aceler ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Извинения приняты, я знаю, что ты хороший и адекватный =^_^=.

Хотя я ставлю на пропадание записи в UEFI, а не самого файла загрузчика.

ОК, при каких обстоятельствах это могло произойти? Отформатировать EFI при установке, выбрав не ту опцию инсталлятора — запросто. Я поэтому подозреваю именно эту историю.

Снести EFI запись? Как и почему? Если у тебя есть такой опыт, поделись.

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

Снести EFI запись? Как и почему? Если у тебя есть такой опыт, поделись.

У меня есть опыт помощи новичку, где запись просто пропадала из UEFI сама по себе, правда запись о Linux (при этом файлы загрузчика на EFI разделе никуда не пропадали). Учитывая множество рассказов о кривых UEFI, мне это кажется вполне возможным.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 2)
Ответ на: комментарий от Aceler

Вот тут: Поломался Grub (комментарий) — добавление записи руками помогло. К слову, чтобы это отдебажить, мне пришлось поставить Ubuntu Server в VirtualBox на UEFI и вручную сравнивать все файлы и записи на предмет соответствия. Порою кажется, что UEFI был внедрен MS для препятствования Linux, настолько муторно с ним работать, даже если знаешь, что и как.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 3)
Ответ на: комментарий от Vsevolod-linuxoid

Ну кривой EFI это всё что угодно. Я видел случай, что EFI тупо не видел больше трёх записей, например.

Ждём результатов efibootmgr.

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

Я слышал рассказ о UEFI, что хранил на ЖД в отдельном разделе часть своей прошивки, и если при смене ЖД ты не скопировал этот раздел — матплата превращалась в кирпич. Но это уже как байка выглядит.

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

У Lenovo была такая история. Там ноутбуки хранили состояние UEFI на EFI разделе. Даже новости на LOR была, что при обнулении состояния UEFI ноут превращался в кирпич.

Так, о чём это мы :-)

Aceler ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Ну я ещё не востанавливал загрузчик Windows, так как боюсь линух затереть. А на бэкап времени нет)

А можно поподробнее? То есть есть возможность поменять конфиг и всё таки настроить загрузку для второй системы?

Или всё таки у меня другая ситуация и не получится?

mayar
() автор топика
Ответ на: комментарий от Vsevolod-linuxoid

sudo efibootmgr -v


BootCurrent: 0001
Timeout: 0 seconds
BootOrder: 0001,0000,2001,2002,2003
Boot0000* HDD0: HFS128G39TND-N210A      PciRoot(0x0)/Pci(0x17,0x0)/Sata(2,32768,0)/HD(1,GPT,171f5ec4-4071-f640-bad8-61e601e9650a,0x800,0x100000)RC
      dp: 02 01 0c 00 d0 41 03 0a 00 00 00 00 / 01 01 06 00 00 17 / 03 12 0a 00 02 00 00 80 00 00 / 04 01 2a 00 01 00 00 00 00 08 00 00 00 00 00 00 00 00 10 00 00 00 00 00 c4 5e 1f 17 71 40 40 f6 ba d8 61 e6 01 e9 65 0a 02 02 / 7f ff 04 00
    data: 52 43
Boot0001* Manjaro       HD(1,GPT,171f5ec4-4071-f640-bad8-61e601e9650a,0x800,0x100000)/File(\EFI\Manjaro\grubx64.efi)
      dp: 04 01 2a 00 01 00 00 00 00 08 00 00 00 00 00 00 00 00 10 00 00 00 00 00 c4 5e 1f 17 71 40 40 f6 ba d8 61 e6 01 e9 65 0a 02 02 / 04 04 36 00 5c 00 45 00 46 00 49 00 5c 00 4d 00 61 00 6e 00 6a 00 61 00 72 00 6f 00 5c 00 67 00 72 00 75 00 62 00 78 00 36 00 34 00 2e 00 65 00 66 00 69 00 00 00 / 7f ff 04 00
Boot2001* EFI USB Device        RC
      dp: 7f ff 04 00
    data: 52 43
Boot2002* EFI DVD/CDROM RC
      dp: 7f ff 04 00
    data: 52 43
Boot2003* EFI Network   RC
      dp: 7f ff 04 00
    data: 52 43

find /boot/efi -type d -i ‘microsoft’ -exec ls -laR {} ;

дал ошибку find: unknown predicate `-i’

заменил -i на ilname вывело пустоту

mayar
() автор топика
Ответ на: комментарий от Vsevolod-linuxoid
Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors
Disk model: HFS128G39TND-N21
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 2848195F-A92F-C840-9C7A-C32D748DD7D6

Device        Start       End   Sectors   Size Type
/dev/sda1      2048   1050623   1048576   512M EFI System
/dev/sda2   1050624  28313599  27262976    13G Linux swap
/dev/sda3  28313600 250067756 221754157 105.7G Linux filesystem


Disk /dev/sdb: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: WDC WD10SPZX-21Z
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: E7D03498-2D87-44BB-ABEB-F213607E5169

Device          Start        End    Sectors   Size Type
/dev/sdb1        2048 1258293247 1258291200   600G Linux filesystem
/dev/sdb2  1258293248 1258326015      32768    16M Microsoft reserved
/dev/sdb3  1258326016 1953523711  695197696 331.5G Microsoft basic data

/boot/efi:
total 12
drwx------ 3 root root 4096 Jan  1  1970 .
drwxr-xr-x 5 root root 4096 Dec 27 20:41 ..
drwx------ 4 root root 4096 Dec 25 15:25 EFI

/boot/efi/EFI:
total 16
drwx------ 4 root root 4096 Dec 25 15:25 .
drwx------ 3 root root 4096 Jan  1  1970 ..
drwx------ 2 root root 4096 Dec 25 15:25 Manjaro
drwx------ 2 root root 4096 Dec 25 15:25 boot

/boot/efi/EFI/Manjaro:
total 156
drwx------ 2 root root   4096 Dec 25 15:25 .
drwx------ 4 root root   4096 Dec 25 15:25 ..
-rwx------ 1 root root 151552 Dec 25 15:25 grubx64.efi

/boot/efi/EFI/boot:
total 156
drwx------ 2 root root   4096 Dec 25 15:25 .
drwx------ 4 root root   4096 Dec 25 15:25 ..
-rwx------ 1 root root 151552 Dec 25 15:25 bootx64.efi

mayar
() автор топика
Ответ на: комментарий от Vsevolod-linuxoid

а, ну ща прочитал тред и вжиу. что виндовый ефи и вправду исчез. Ну не серчай, я ж тред то не читаю - сразу отвечаю) Тогда ефи надо восстановить, очевидно. В инторнете куча гайдов хз какой степени пригодности

SpaceRanger ★★
()
Последнее исправление: SpaceRanger (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

И что это значит)

вижу что fdisk показал что на разделах микрософт

Я смогу восстановить загрузчик без подключения через установочную флешку и попытки восстановить загрузчик винды на разделе, как посоветовал Aceler?

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

Короче, @Aceler был прав: у тебя пропал загрузчик Windows на EFI разделе. Linux такое не может восстановить.

Тебе придется его с Windows флешки восстанавливать. После может быть снесен и загрузчик Linux, тогда и его, только уже с Linux флешки.

Прочти это: Fedora 36. Удалил grub.cfg, теперь не могу запустить систему. (комментарий) — тут я описал, как загрузка работает.

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

Хорошо, спасибо!

Обязательно почитаю.

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

А ещё вопрос? А может такое случится, что линух вообще удалится? Просто если есть вероятность, то я отложу это в долгий ящик

mayar
() автор топика
Ответ на: комментарий от SpaceRanger

os-prober ещё надо поставить

Если бы у ТС не было os-prober, grub2-mkconfig выдавал бы другой результат. Так что он у него есть.

Aceler ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

«Умеет» — не значит, что все обязаны упереться рогом и пользоваться исключительно им. GRUB тупо удобнее (и смотрится лучше).

alegz ★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.