Ошибка grub не видит Windows 10
Многие новички и опытные пользователи Linux держат также установленной на своем компьютере операционную систему Windows, например, последней, десятой версии. Новичкам это нужно чтобы иметь запасную операционную систему, к которой они смогут вернуться, если их Linux сломается. А для опытных пользователей важно программное обеспечение, которое не поддерживается ни в Linux, ни даже с помощью эмулятора Wine, а таких программ достаточно много.
Но временами случается такая ситуация, что загрузчик Grub не распознает установленную Windows и не отображает ее в списке для систем для загрузки. В этой статье мы рассмотрим почему возникает ошибка grub не видит Windows 10 и как ее решить.
Ошибка Grub не видит Windows 10
Причин такой ошибки может быть несколько, начиная от того, что система установлена на другом жестком диске, и заканчивая неизвестными глюками пакета os-prober, который и занимается определением операционных систем в Linux. Также, если у вас есть несколько версий Windows на компьютере, то программа может видеть только одну из них.
Сначала можно попытаться сделать наш с Windows раздел более видимым для программы. Для этого примонтируйте его в какую-либо папку. Например, в /mnt/:
sudo mount -t ntfs-3g -o ro /dev/sda1
Я предполагаю, что система Windows установлена на разделе, который определяется в Linux, как /dev/sda1. Дальше запустите утилиту os-prober:
Если программа обнаружит Windows, то вам останется обновить конфигурацию загрузчика Grub:
sudo grub2-mkconfig -o /boot/grub/grub.cfg
Если же этот способ не сработает, а он, скорее всего, не сработает, то вам останется только вручную добавить пункт меню для Windows. Это не самое простое, но зато эффективное решение. Сначала нам нужно узнать UUID раздела диска, на который установлена Windows, например, /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:
Мы использовали такой метод потому что теперь настройка не собьется после обновления ядра или другого процесса, инициализирующего обновление конфигурации. Потому что если бы мы добавили эти строки в /boot/grub/grub.cfg, то они были бы перезаписаны если не при первом, то при одном из следующих обновлений системы.
Когда конфигурация обновлена вы можете перезагрузить компьютер и загружать Windows с помощью нового пункта. Таким образом, можно добавить несколько пунктов, только для разных разделов нужно указывать их UUID.
Выводы
В этой небольшой статье мы разобрали что делать когда у вас возникнет ошибка grub не видит windows 10 и какими способами ее можно исправить. На самом деле решение очень простое, если вы не используете систему с UEFI. В варианте с EFI загрузка Windows управляется не Grub, а загрузчиком UEFI, но при использовании Linux рекомендуется отключить эту технологию.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
BIOS не видит GRUB — решение!
Устанавливая Linux Mint 20 на свой ноутбук Acer, рядом с Windows 10, я столкнулся с проблемой. После установки второй операционной системы, BIOS отказывался ее видеть и по прежнему грузил установленную ранее Windows.
Решение этой проблемы было найдено довольно быстро! Все оказалось довольно просто!
Оказалось что, UEFI — компонент BIOS’а, даже в отключенном состоянии по-прежнему проводит проверку загружаемых фалов и по его мнению, GRUB — такой себе компонент, явно не подлежащий загрузке! Так что пришлось вручную учить UEFI. Для этого, разумеется, пришлось лезть в BIOS.
На большинстве материнских плат, для этого используется клавиша F2 , нажатая при загрузке компьютера. Но если у Вас она не сработает, то уточните информацию о BIOS в спецификации вашего ПК.
Для манипуляций с UEFI, потребуется задать пароль пользователя BIOS, делается это в секции SECURITY.
Не перепутайте пароль от BIOS с паролем на загрузку. Если вы зададите его, то придется вводить код не только при входе в настройки, но при каждом запуске ПК. Снять его можно, но это лишняя головная боль.
Запомните пароль, поскольку в следующий раз, при входе в BIOS, с вас уже будут запрашивать код.
Проверьте, что функция Secure Boot включена, иначе, требуемые нам пункты будут не доступны.
А отключите вы ее позднее, это все равно потребуется, если вы хотите запустить на Linux проприетарные драйвера.
После включения Secure Boot и задания пароля активируется следующий пункт секции SECURITY:
Зайдя в него, мы увидим каталог, в котором требуется пройти по следующему пути:
Там будет лежать файл — grub , вот его то и нужно добавить в доверенные. Для этого, жмем на него с помощью Enter и подтверждаем добавление файла в доверенные с помощью введения слова YES.
Теперь BIOS увидит GRUB, но по-прежнему будет грузить Windows. Чтобы исправить это — нужно изменить приоритет загрузки. Делается это все в тех же настройках BIOS, но уже в секции BOOT.
Если вы сделали все предыдущие шаги, то в меню загрузки отобразиться новый пункт:
Это и есть наш GRUB, который с помощью клавиш F5-F6 требуется поставить на первое место в списке загрузки.
Обратите внимание, внизу BIOS дана четкие указания, какие клавиши нужно использовать для управления!
После всех этих операций, не забудьте вновь отключить функцию Secure Boot. Это делается все в той же секции — BOOT.
После этого, сохраните все операции клавишей F10 и выйдите из BIOS. При следующей перезагрузке ПК или ноутбука, вы увидите работающий GRUB, вместо загрузки Windows 10.
В нем Вы уже можете выбирать, что будет загружено Linux или Windows.
Не забываем ставить палец вверх и подписываться на канал. Впереди еще много интересного!
Меню загрузки Grub не видит установленную Windows 10
Одной из наиболее распространенных причин отсутствия 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 .
Способ 3: Ручное добавление загрузчика
При использовании первого способа вероятность сходу обнаружить и прописать Windows 10 в линуксовый загрузчик довольно невелика. Более сложным, но и более эффективным способом восстановления записи Windows 10 в загрузочном меню Grub является ручное добавление. Способ универсальный, использовать его можно не только при потере Windows 10, но и других операционных систем Windows.
- Узнайте название раздела с Windows как было показано в первом пункте предыдущего способа.
- Определите UUID раздела, на котором установлена Windows 10, для чего выполните в «Терминале» команду blkid /dev/sda1 , где /dev/sda1 — название раздела с Windows.
set root='(hd0,1)’
search —no-floppy —fs-uuid —set XXXXXXXXXXXXXXXX
chainloader +1
> .
Сохраните файл.
Если восстановить/добавить запись Windows 10 в загрузочное меню «Grub» не удалось, проверьте, не удален ли на диске служебный 100 МБ NTFS-раздел с загрузочными файлами. Если удален, можно будет попробовать его восстановить, но будет гораздо проще переустановить Windows и Linux. В том случае, когда используется «Grub 2» на UEFI, попробуйте включить в BIOS режим «Legacy».