Все способы:
- Способ 1: Установка Windows на диск с Linux
- Способ 2: Обнаружение раздела Windows
- Способ 3: Ручное добавление загрузчика
- Вопросы и ответы: 0
Способ 1: Установка Windows на диск с Linux
Одной из наиболее распространенных причин отсутствия Windows 10 в загрузочном меню «Grub» является установка Windows не на тот же физический диск, на который устанавливается Linux. Если нужно установить на один компьютер Windows и Linux, устанавливайте их по возможности на один физический жесткий диск, причем первой необходимо установить Windows. Если сперва будет установлена Linux, а затем Windows, то есть большая вероятность, что загрузчик Windows затрет «Grub».
Способ 2: Обнаружение раздела Windows
Если переустановка Windows 10 по какой-то причине невозможна, попробуйте обнаружить ее из среды Linux и добавить в загрузчик последней.
- Определите в Linux название раздела, на который установлена Windows. Получить сведения о дисках и разделах в Linux можно как из «Терминала», так и с помощью штатного приложения «Дисковая утилита». Скопируйте или запомните название устройства. Например, это будет «/dev/sda1».
- Откройте «Терминал» и примонтируйте раздел с Windows 10, для чего выполните команду
sudo mount -t ntfs-3g -o ro /dev/sda1
, где /dev/sda1 — полученный на предыдущем этапе путь к тому с Windows. - Чтобы обнаружить Windows 10, выполните тут же в «Терминале» команду
sudo os-prober
. - В случае успешного обнаружения Windows обновите конфигурацию «Grub» командой
sudo update-grub
либо жеsudo grub2-mkconfig -o /boot/grub/grub.cfg
.
Способ 3: Ручное добавление загрузчика
При использовании первого способа вероятность сходу обнаружить и прописать Windows 10 в линуксовый загрузчик довольно невелика. Более сложным, но и более эффективным способом восстановления записи Windows 10 в загрузочном меню Grub является ручное добавление. Способ универсальный, использовать его можно не только при потере Windows 10, но и других операционных систем Windows.
- Узнайте название раздела с Windows как было показано в первом пункте предыдущего способа.
- Определите UUID раздела, на котором установлена Windows 10, для чего выполните в «Терминале» команду
blkid /dev/sda1
, где /dev/sda1 — название раздела с Windows. - Откройте любым текстовым редактором файл
/etc/grub.d/40_custom
и вставьте в него следующий код, где XXXXXXXXXXXXXXXX — полученный на предыдущем шаге UUID:menuentry "Windows 10" {
.
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set XXXXXXXXXXXXXXXX
chainloader +1
}
Сохраните файл. - Обновите конфигурацию Grub командой
sudo update-grub
, перезагрузите компьютер и посмотрите, появилась ли Windows в загрузочном меню Grub.
Если восстановить/добавить запись Windows 10 в загрузочное меню «Grub» не удалось, проверьте, не удален ли на диске служебный 100 МБ NTFS-раздел с загрузочными файлами. Если удален, можно будет попробовать его восстановить, но будет гораздо проще переустановить Windows и Linux. В том случае, когда используется «Grub 2» на UEFI, попробуйте включить в BIOS режим «Legacy».
Наша группа в TelegramПолезные советы и помощь
Grub (GNU GRand Unified Bootloader) — свободный загрузчик операционных систем, который используется во многих дистрибутивах Linux. Он позволяет выбирать операционную систему для загрузки при старте компьютера и управлять процессом загрузки системы, также поддерживает загрузку различных OS, включая различные версии Linux, Windows, macOS, позволяет настраивать параметры загрузки, создавать различные профили загрузки и выполнять другие задачи, связанные с загрузкой операционных систем.
Grub обычно устанавливается в начало жесткого диска компьютера и запускается при старте системы для предоставления пользователю возможности выбора операционной системы для загрузки. Grub является важной частью многих дистрибутивов Linux и играет ключевую роль в процессе загрузки операционной системы.
GRUB (GNU GRand Unified Bootloader) — мощный и гибкий загрузчик операционных систем, который используется во многих дистрибутивах Linux и других операционных систем, таких как FreeBSD. GRUB предоставляет пользователю возможность выбора операционной системы или ядра, которое нужно загрузить при старте компьютера.
Позволяет загружать различные операционные системы, а также варианты загрузки для конкретной операционной системы, например, в безопасном режиме или с другими параметрами загрузки. Он также поддерживает многоядерные системы и может автоматически обнаруживать установленные операционные системы на жестком диске. Имеет гибкую конфигурацию, которая позволяет пользователям настраивать параметры загрузки, добавлять новые ядра или операционные системы в меню загрузки, а также выполнять другие действия при загрузке системы.
GRUB является одним из наиболее распространенных загрузчиков для систем Linux и используется по умолчанию во многих дистрибутивах Linux, таких как Ubuntu, Fedora, Debian и многих других.
Если Grub не видит Windows 10 при загрузке, возможно, что загрузочная запись Windows была повреждена или удалена. Есть несколько причин, почему так происходит:
- Неправильная конфигурация: если Grub неправильно сконфигурирован или не обновлен после установки Windows 10, он может не видеть новую операционную систему.
- Изменения разделов диска: после установки Windows 10 могли произойти изменения в разделах диска, из-за чего Grub перестал её видеть..
- Проблемы с загрузочным сектором: некорректное обновление загрузочного сектора или MBR (Master Boot Record) могут привести к проблеме.
- Проблемы с UEFI/BIOS: некорректные настройки в UEFI или BIOS компьютера могут привести к тому, что Grub не сможет правильно обнаружить операционную систему.
- Поврежденные файлы загрузки: если файлы загрузки повреждены или отсутствуют, Grub не сможет их обнаружить.
Дальше расскажем, что же делать, если возникла такая проблема.
Сначала можно попытаться сделать наш с Windows раздел более видимым для программы. Для этого примонтируйте его в какую-либо папку. Например, в /mnt/
:
sudo mount -t ntfs-3g -o ro /dev/sda1
Система Windows установлена на разделе, который определяется в Linux, как /dev/sda1
. Дальше запустите утилиту os-prober:
sudo os-prober
Если программа обнаружит Windows, останется обновить конфигурацию загрузчика Grub:
sudo update-grub
Или:
sudo grub2-mkconfig -o /boot/grub/grub.cfg
Если же этот способ не сработает, останется только вручную добавить пункт меню для Windows. Это не самое простое, но зато эффективное решение. Сначала нам нужно узнать UUID раздела диска, на который установлена Windows, например, /dev/sda1
:
blkid /dev/sda1
Затем откройте файл /etc/grub.d/40_custom
и добавьте туда такой код:
menuentry "Windows 10" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set B4A6AEB7A6AE7A0E
chainloader +1
}
Так мы устанавливаем в качестве корня первый раздел первого диска, а затем указываем загрузчику, что нужно найти раздел с нужным нам UUID. Затем передаем управление загрузчику на этом разделе с помощью chainloader. Дальше осталось обновить конфигурацию Grub:
sudo update-grub
Мы использовали такой метод потому что теперь настройка не собьется после обновления ядра или другого процесса, инициализирующего обновление конфигурации. Потому что если бы мы добавили эти строки в /boot/grub/grub.cfg
, то они были бы перезаписаны если не при первом, то при одном из следующих обновлений системы.
Когда конфигурация обновлена вы можете перезагрузить компьютер и загружать Windows с помощью нового пункта. Таким образом, можно добавить несколько пунктов, только для разных разделов нужно указывать их UUID.
Была установлена Windows7, которой я пользовался достаточно длительное время. Захотел освоить убунту. Т.к. нельзя было уничтожать инфу и пока не разберусь с убунтой, решил оставить винду на всякий случай.
Разбивка получилась бредовая, но по другому никак(
вот результат fdisk -l
sda1 — /boot/
sda2 — мой диск E в винде
sda3 — windows
sda5 — мой диск D в винде
sda6 — swap
sda7 — /
sda8 — /home/
grub-update делал, но он не видит винду. Появляется только убунту и 2 штуки сканирования памяти.
Установил пакет boot-repair.
Попытался востановить MBR винды, но после этого вылезла такая штука минуя граб:
BOOTMGR is missing
Press ctrl+alt+del to restart
лог: ЛОГ
Обратно всё вернулось после выбора рекомендуемых параметров boot-repair. Лог от boot-repair: ЛОГ
Подскажите пожалуйста как подружить ubuntu и Windows7 в моей ситуации. Целый день карачился и ничего так и не получилось.
-
Вопрос задан
-
11872 просмотра
Все предложенные варианты — не помогли((
Пришлось переразбивать винт и нормально, последовательно всё ставить.
Пригласить эксперта
Нормальная практика;) последовательность действий следующая-> востанавливаете загрузчик винды(для этого нужен образ винды) после этого будет загружаться винда, после востанавливаете grub с помощью live-cd ubuntu
Возможно поможет
sudo -s
apt-get install os-prober
update grub
Это стандартные проблемы, которые связанны с MBR и различными флагами.
Если хотите быстро и просто решить проблему, грузите Ubuntu и устанавливайте Boot-Repair:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo sed 's/trusty/saucy/g' -i /etc/apt/sources.list.d/yannubuntu-boot-repair-trusty.list
sudo apt-get update
sudo apt-get install -y boot-repair && (boot-repair &)
Если нужны детали, обращайтесь сюда: Boot Repair
Добавте в /etc/grub.d/40_custom , (или создать, пример, 50_windows)
menuentry 'Windows' {
insmod part_msdos
insmod fat
insmod ntfs
insmod ntldr
set root='hd0,msdos1'
search --no-floppy --file --set=root /bootmgr
ntldr /bootmgr
}
update-grub
Скорее всего, у Вас UEFI/EFI. У меня такое было после установки линукса паралельно с Windows 7 на EFI. Grub просто не «подхватил» нужную запись.
В линуксе сделайте в терминале, пот рутом:
~# update-grub
~# reboot
Если не появился нужный пункт в списке систем, продолжаем. Выполните под рутом:
~# grub-probe —target=fs_uuid /boot/*/*/Microsoft/Boot/bootmgfw.efi
выводом будет Ваш идентификатор диска с виндой — выпишем его на бумагу
затем выполните (я использую vim, если не знакомы — любой другой консольный редактор:
~# vim /etc/grub.d/40_custom
и в самый конец допишите, после всех комментариев с новой строки:
menuentry «Windows x86_64 UEFI-GPT» {
insmod part_gpt
insmod fat
search —fs-uuid —no-floppy —set=root ВАШ_ИДЕНТИФИКАТОР_С_БУМАГИ
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
После этого выполните от рута:
~# update-grub
~# reboot
Profit!
Войдите, чтобы написать ответ
-
Показать ещё
Загружается…
Минуточку внимания
# |
|
Темы: 4 Сообщения: 9 Участник с: 07 августа 2023 |
Всем ку!!! помогите, пожалуйста, поставил дуалбут, а граб Винду не видит…
перепробовал эти гайды: https://lumpics.ru/grub-does-not-see-windows-10/ https://askubuntu.com/questions/216215/invalid-efi-file-path и вроде в меню винда появляется, но либо не грузит, либо пишет «Invalid EFI file path» помогите, прошу… |
vasek |
# (отредактировано 1 год, 8 месяцев назад) |
Темы: 47 Сообщения: 11925 Участник с: 17 февраля 2013 |
Информации мало, гадать никто не будет … Для начала посмотри этот топик — возможно причина и в os-prober Ошибки не исчезают с опытом — они просто умнеют |
arruka |
# |
Темы: 4 Сообщения: 9 Участник с: 07 августа 2023 |
решение через os-prober тоже пробовал, но ничего не получилось т_т весь интернет перерыл — ничего не помогает _( однако!!! |
zotkindm |
# |
Темы: 73 Сообщения: 591 Участник с: 21 мая 2014 |
У всех работает у одного тебя нет. EFI раздел монтировал? |
Natrio |
# |
Темы: 48 Сообщения: 4771 Участник с: 08 января 2011 |
Для начала надо неплохо было бы выяснить, что за Windows, и загружается ли она из BIOS/UEFI (и жива ли вообще). Видно ли там в вариантах загрузки «Windows boot manager»? Видно ли grub, arch или что-то в этом духе? В каком режиме (BIOS/UEFI) запускается GRUB? Чтобы запустить загрузчик Windows из GRUB, они должны быть одинакового типа (BIOS-BIOS или UEFI-UEFI). |
kononow |
# |
Темы: 0 Сообщения: 2 Участник с: 23 января 2022 |
До того как в вики появилось я с этим столкнулся: |
acid_raccoon |
# |
Темы: 10 Сообщения: 111 Участник с: 08 мая 2020 |
Всем привет. Извините что немного не по теме. У кого dualboot win10 и arch в uefi режиме. Поделитесь примером menuentry для win10 из grub.cfg которая создана командой # grub-mkconfig -o /boot/grub/grub.cfg. Спасибо. «Load universe into cannon. Aim at brain. Fire.» © |
RusWolf |
# |
Темы: 11 Сообщения: 2869 Участник с: 16 июля 2016 |
https://t.me/arch_linuxru |
acid_raccoon |
# (отредактировано 1 год, 8 месяцев назад) |
Темы: 10 Сообщения: 111 Участник с: 08 мая 2020 |
Судя по этой строчке у тебя общий esp раздел для win и linux, и оба загрузчика находятся на нём. А как chainloader должен выглядеть если win на отдельном диске, со своим esp и bootmgfw.efi не нём. Если записываю так:
получаю:
«Load universe into cannon. Aim at brain. Fire.» © |
RusWolf |
# (отредактировано 1 год, 8 месяцев назад) |
Темы: 11 Сообщения: 2869 Участник с: 16 июля 2016 |
Нет. На разных дисках.
Так же:
У тебя ESP раздел, совсем не на третьем разделе, из вывода твоего lsblk -lf. https://t.me/arch_linuxru |
0
1
Здравствуйте, установил вчера кое как арч линукс второй системой на ноут. Теперь не могу запустить windows. Grub не видит её.
В общем устанавливал я не с первого раза, использовал новый установщик archinstall. Попыток наверно 5 сделал и все заканчивались красным страшным текстом на весь монитор, что что то там не получилось, как я понял не получалось efi раздел смонтировать или не туда он монтировался, я испробовал много разных вариантов, которые раньше работали, но сейчас почему то не вышло.
Установил я арч без загрузчика и потом из chroot смонтировал /dev/nvme0n1p1 (efi раздел 4гб) в /boot, и там появилась папка EFI. Далее установил grub (он сам нашел efi раздел) и о чудо все заработало. Но в grub нет windows. Погуглил я и не нашел решения моего вопроса, везде советуют #grub-mkconfig -o /boot/grub/grub.cfg, но grub.cfg у меня нет в системе в принципе.
Вот дерево /boot:
/boot
├── EFI
│ ├── arch
│ ├── Boot
│ │ └── bootx64.efi
│ ├── grub
│ │ └── grubx64.efi
│ ├── Lenovo
│ │ └── BIOS
│ │ └── SelfHealing.fd
│ └── Microsoft
│ ├── Boot
│ │ ├── BCD
│ │ ├── BCD.LOG
│ │ ├── BCD.LOG1
│ │ ├── BCD.LOG2
│ │ ├── bg-BG
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── bootmgfw.efi
│ │ ├── bootmgr.efi
│ │ ├── BOOTSTAT.DAT
│ │ ├── boot.stl
│ │ ├── cs-CZ
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── da-DK
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── de-DE
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── el-GR
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── en-GB
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── en-US
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── es-ES
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── es-MX
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── et-EE
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── fi-FI
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── Fonts
│ │ │ ├── chs_boot.ttf
│ │ │ ├── cht_boot.ttf
│ │ │ ├── jpn_boot.ttf
│ │ │ ├── kor_boot.ttf
│ │ │ ├── malgun_boot.ttf
│ │ │ ├── malgunn_boot.ttf
│ │ │ ├── meiryo_boot.ttf
│ │ │ ├── meiryon_boot.ttf
│ │ │ ├── msjh_boot.ttf
│ │ │ ├── msjhn_boot.ttf
│ │ │ ├── msyh_boot.ttf
│ │ │ ├── msyhn_boot.ttf
│ │ │ ├── segmono_boot.ttf
│ │ │ ├── segoen_slboot.ttf
│ │ │ ├── segoe_slboot.ttf
│ │ │ └── wgl4_boot.ttf
│ │ ├── fr-CA
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── fr-FR
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── hr-HR
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── hu-HU
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── it-IT
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── ja-JP
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── kd_02_10df.dll
│ │ ├── kd_02_10ec.dll
│ │ ├── kd_02_1137.dll
│ │ ├── kd_02_14e4.dll
│ │ ├── kd_02_15b3.dll
│ │ ├── kd_02_1969.dll
│ │ ├── kd_02_19a2.dll
│ │ ├── kd_02_1af4.dll
│ │ ├── kd_02_8086.dll
│ │ ├── kd_07_1415.dll
│ │ ├── kd_0C_8086.dll
│ │ ├── kdnet_uart16550.dll
│ │ ├── kdstub.dll
│ │ ├── ko-KR
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── lt-LT
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── lv-LV
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── memtest.efi
│ │ ├── nb-NO
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── nl-NL
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── pl-PL
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── pt-BR
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── pt-PT
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── qps-ploc
│ │ │ └── memtest.efi.mui
│ │ ├── Resources
│ │ │ ├── bootres.dll
│ │ │ ├── en-US
│ │ │ │ └── bootres.dll.mui
│ │ │ └── ru-RU
│ │ │ └── bootres.dll.mui
│ │ ├── ro-RO
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── ru-RU
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── sk-SK
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── sl-SI
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── sr-Latn-RS
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── sv-SE
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── tr-TR
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ ├── uk-UA
│ │ │ ├── bootmgfw.efi.mui
│ │ │ └── bootmgr.efi.mui
│ │ ├── winsipolicy.p7b
│ │ ├── zh-CN
│ │ │ ├── bootmgfw.efi.mui
│ │ │ ├── bootmgr.efi.mui
│ │ │ └── memtest.efi.mui
│ │ └── zh-TW
│ │ ├── bootmgfw.efi.mui
│ │ ├── bootmgr.efi.mui
│ │ └── memtest.efi.mui
│ └── Recovery
│ ├── BCD
│ ├── BCD.LOG
│ ├── BCD.LOG1
│ └── BCD.LOG2
└── System Volume Information
51 directories, 142 files
Вот вывод fdisk -l:
Disk /dev/nvme0n1: 953.87 GiB, 1024209543168 bytes, 2000409264 sectors
Disk model: SAMSUNG MZVLB1T0HBLR-000L2
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 406BE08F-2983-4B8D-976D-A6BB8EE68842
Device Start End Sectors Size Type
/dev/nvme0n1p1 2048 8194047 8192000 3.9G EFI System
/dev/nvme0n1p2 8194048 8226815 32768 16M Microsoft reserved
/dev/nvme0n1p3 8226816 928724961 920498146 438.9G Microsoft basic data
/dev/nvme0n1p4 928724992 929791999 1067008 521M Windows recovery environment
/dev/nvme0n1p6 937984000 2000408575 1062424576 506.6G Linux filesystem
Я допускаю, что я рукожоп и криво установил grub, но даже теперь не знаю что делать, нужно что бы в grub был выбор windows и arch. Хелп!