Как в GRUB выставить Windows первой для загрузки?
В этой статье расскажем новичкам, как настроить загрузчик GRUB, чтобы Windows была первой для загрузки, а также настроим таймер выбора ОС!
И так вы установили Ubuntu или другой Linux дистрибутив рядом с Windows? Наверняка вы заметили что при запуске компьютера теперь отображается меню со списком операционных систем, если ничего не выбрать, то начнет автоматически загружаться Ubuntu.
Как сделать загрузку Windows первой в Grub и таймер выбора операционных систем длился не 10 секунд, а например 5?
Способ 1 как сделать загрузку Windows первой в Grub
При включении компьютера сфотографируйте меню со списком операционных систем.
- Запустите Ubuntu и откройте программу «Терминал»
- Введите следующую команду
sudo nano /etc/default/grub - В терминале появиться текстовый файл отвечающий за запуск ОС
Строка GRUB_DEFAAULT — отвечает за то, какая операционная система будет загружена. Отчет начинается с 0, а не 1!
Поэтому смотрим на список ОС в меню GRUB при запуске, который вы сделали в начале и выставляем в GRUB_DEFAAULT= необходимую цифру.
Для того чтобы меню загрузчика Grub отображалось гораздо меньше, необходимо изменить строку GRUB_TIMEOUT=10 , где 10 это количество секунд. Выставляем необходимое значение.
Чтобы сохранить изменения внесенные в текстовый файл Grub необходимо:
- Нажимаем комбинацию CTRL+O, а затем ENTER
- Нажимаем комбинацию CTRL+X
Теперь необходимо обновить загрузчик GRUB:
Теперь при следующей загрузке. Windows будет загружаться первой.
Единственным недостатком такой настройки является то, что при установке новых ядер Linux, список будет сбиваться, придется все перенастраивать.
Способ 2 как сделать загрузку Windows первой в Grub
- Запустите Ubuntu и откройте программу «Терминал»
- Введите команду grep menuentry /boot/grub/grub.cfg после чего у вас появиться список
- Скопируйте значения ‘Windows …’ (вместо точек название ОС и путь подключения)
- Введите следующую команду sudo nano /etc/default/grub
- В строке GRUB_DEFAAULT= вместо цифры ставьте скопированные данные в двойных кавычках.
Например GRUB_DEFAAULT=»Windows 7 (loader) (on /dev/sda1)» - Сохраняем изменения:
- Нажимаем комбинацию CTRL+O, а затем ENTER
- Нажимаем комбинацию CTRL+X
- Теперь необходимо обновить загрузчик GRUB:
Теперь при следующей загрузке. Windows будет загружаться первой.
У вас еще остались вопросы? Пишите их в комментариях, рассказывайте, что у вас получилось или наоборот!
Вот и все! Больше полезных статей и инструкций читайте в разделе Статьи и Хаки Android. Оставайтесь вместе с сайтом Android +1, дальше будет еще интересней!
Как добавить загрузчик windows в grub
EFI предназначен для замены BIOS. /boot/efi — это системный загрузочный раздел создаваемый, когда мат. плата ноутбука использует UEFI вместо BIOS (подробнее).
Также я воспользовался скриптом Boot Info Script. Вот его результаты:
Из этого становится ясно, что Windows установлена в MBR на /dev/sda. А /grub/grub.cfg расположен на sdb2.
Путем экспериментов я выяснил, что в скрипте /etc/grub.d/40_custom срабатывает следующее условие:
И не срабатывает следующее условие:
Также в ходе одного из экспериментов я получил ошибку:
«/boot/grub/x86_64-efi/ntldr.mod not found»
Я не уверен, что Windows 10 у меня установлена в UEFI режиме. Возможно GRUB может загружать только системы установленные в том же режиме, в котором он сам запущен.
Да, действительно Windows работает в устаревшем режиме.
MSINFO32 |
UEFI — это интерфейс между операционной системой и микропрограммами, управляющими низкоуровневыми функциями оборудования. Получается Ubuntu у меня работает с новым UEFI, а Windows с legacy BIOS.
Установим новую загрузочную конфигурацию на диск C: из под Windows:
C:\WINDOWS\system32>bcdboot C:\Windows /s C: /f uefi
Файлы загрузки успешно созданы.
Я пробовал добавить в файл /etc/grub.d/40_custom следующую настройку (подробнее), но дальше логотипа Windows 10 загрузка не идет:
Вот здесь пишут, что нельзя мешать режимы Windows in BIOS/CSM/legacy mode и Ubuntu in EFI/UEFI mode. И нужно переустанавливать одну из ОС. Или как-то по другому переключаться.
Как сделать загрузку Windows первой в Grub
Для выбора и запуска операционной системы во время загрузки компьютера используется специализированная программа — загрузчик. Самый популярный загрузчик — Grub. При установке нескольких операционных систем, например, Linux поверх Windows, в меню загрузчика первой будет последняя установленная ОС.
Это не вызовет проблем у пользователей, которые пользуются Linux как основной системой, для них это даже более предпочтительный вариант. Но если вы еще новичок, и хотите использовать Linux второй системой, а Windows пока еще основной, до тех пор, пока не освоитесь, то наверное захотите чтобы первой была Windows. В этой статье мы рассмотрим как сделать загрузку Windows первой в Grub. Рассмотрим два способа: с помощью программы Grub Customizer и вручную, через файлы конфигурации загрузчика Grub.
Grub Customizer
Grub Customizer — это программа, позволяющая настраивать различные параметры загрузчика Grub. В том числе и положение и очередность пунктов загрузки. Установить программу можно из официальных репозиториев. Например, в Ubuntu нужно использовать ppa:
sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer
Для запуска программы откройте терминал (Ctrl + Alt + T) и наберите grub-customizer:
Для работы программы необходимы права root, в некоторых системах возможно придется использовать такую команду:
Также программу можно запустить из главного меню. Главное окно выглядит вот так:
Несколько секунд после запуска программа будет сканировать установленные операционные системы, затем в этом же окне мы сможем перенести загрузку Windows на первое место. Для этого кликните на нужном пункте правой кнопкой чтобы открылось контекстное меню:
В меню выберите пункт Переместить вверх. Это действие нужно будет повторить несколько раз, пока Windows не будет первой в списке. Теперь будет выполняться загрузка windows по умолчанию grub.
Если потом вы захотите опустить Windows обратно вниз, есть обратное действие — Переместить вниз.
Для сохранения настроек просто нажмите кнопку Сохранить. Готово. Можете перезагружать компьютер и смотреть что получилось.
Но я хочу затронуть еще пару настроек, которые могут быть полезны. Вместо того чтобы делать загрузку Windows первой в Grub, можно изменить пункт запускаемый по умолчанию. Перейдите на вкладку Основные настройки:
Здесь для выбора пункта по умолчанию используемого по умолчанию есть список Задействовать:
Кроме того, можно загружать по умолчанию последнюю загруженную ОС, для этого есть галочка:
Не забудьте снова нажать кнопку сохранить.
Изменение порядка загрузки Grub через терминал
Как я и обещал, теперь рассмотрим как сделать загрузку WIndows первой в Grub с помощью конфигурационных файлов. Конфигурация Grub находится в файле /boot/grub/grub.cfg.
sudo gedit /boot/grub/grub.cfg
Как правило, строки меню выглядят вот так:
menuentry имя_пункта —опции <
.
>
Например пункт Windows:
menuentry ‘Windows 8 (loader) (on /dev/sda1)’ —class windows —class os $menuentry_id_option ‘osprob
er-chain-FC324E26324DE66C’ <
.
>
Теперь чтобы изменить порядок пунктов меню достаточно вырезать все до обратной закрывающей скобочки, вместе с этой строкой, и вставить перед всеми другими пунктами. Затем можно сохранить файл и готово. Перезагружайте и смотрите. Загрузка Windows выполняется по умолчанию. Только минусом данного способа является то, что при обновлении конфигурации Grub все настройки собьются.
Аналогично тому как мы настраивали пункт, загружаемый по умолчанию в Grub Customizer, это можно сделать и в терминале. Откройте файл /etc/default/grub.
gksu gedit /etc/default/grub
Здесь нас интересует строчка:
Замените 0, на нужный пункт для загрузки, также вместо цифры можно указать имя пункта, например:
GRUB_DEFAULT=»Windows 8 (loader) (on /dev/sda1)»
Посмотреть доступные пункты загрузки не открывая файл конфигурации можно командой:
sudo grep menuentry /boot/grub/grub.cfg
Еще можно настроить загрузку последней загруженной системы, для этого добавьте строчку
А в GRUB_DEFAULT укажите saved:
Очевидным плюсом этого способа есть то, что настройки во время обновления конфигурации Grub не собьются, так как во время обновления информация берется из этого файла. Теперь давайте обновим конфигурацию и сохраним настройки командой:
Не во всех системах работает такой вариант, поэтому можно использовать другую команду:
grub2-mkconfig -o /boot/grub/grub.cfg
Вот и все. Теперь вы знаете как сделать загрузку Windows первой в Grub. Но представленную в этой статье информацию можно использовать в более широких целях. Она будет полезна не только для Windows, но и для любых других нескольких систем, очередностью загрузки которых нужно управлять.
Оцените статью:
Об авторе
Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux интересуюсь всем, что связано с информационными технологиями и современной наукой.
10 комментариев
Значит так заходим в терминал и вводим:
/boot/grub/
Дальше sudo nicoedit grub.cfg (где nicoedit название вашего текстового редактора) (в некоторых случаях menu.lst)
Вводим пароль
Открывается окно текстового редактора.
Выбор ОС по умолчанию
В нем сначала просматриваем список загрузки в нижней части файла. Пример:
title Ubuntu, kernel 2.6.20-16-generic
root (hd1,0)
kernel /boot/vmlinuz-2.6.20-16-generic root=UUID=f005531f-451c-440a-8206-eee73f6ae32c ro quiet splash
initrd /boot/initrd.img-2.6.20-16-generic
quiet
savedefault
title Ubuntu, kernel 2.6.20-16-generic (recovery mode)
root (hd1,0)
kernel /boot/vmlinuz-2.6.20-16-generic root=UUID=f005531f-451c-440a-8206-eee73f6ae32c ro single
initrd /boot/initrd.img-2.6.20-16-generic
title Ubuntu, memtest86+
root (hd1,0)
kernel /boot/memtest86+.bin
quiet
### END DEBIAN AUTOMAGIC KERNELS LIST
# This is a divider, added to separate the menu items below from the Debian # ones.
title Other operating systems:
root
# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/hda1
title Windows XP
root (hd0,0)
savedefault
makeactive
chainloader +1
По числу названий, задаваемых ключевым словом title, определяем, начиная с 0, пункты меню. Операционная система Linux в этом списке имеет порядковый номер 0, а Windows — 4.
Теперь в верхней части файла ищем запись:
## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify ‘saved’ instead of a number. In this case, the default entry
# is the entry saved with the command ‘savedefault’.
# WARNING: If you are using dmraid do not change this entry to ‘saved’ or your
# array will desync and will not let you boot your system.
default 0
Если по умолчанию (т.е. без вмешательства пользователя) должна загружаться ОС Linux, оставляем запись default 0 без изменения. Если же это должна быть ОС Windows, изменяем запись: default 4.
Сохраняем файл, выходим из редактора и терминала.