Как добавить windows 10 в меню загрузки grub?
На ssd стояла windows 10.
Разбил hdd под установку linux mint, но после его установки загружалась только windows 10. Решил это чистой установкой Linux, установщик разбил диск как ему надо. Как итог linux грузится, windows 10 — нет, и кроме того не могу войти в настройки bios: меню загрузки там пустое, bios setup не открывается.
В меню загрузки grub есть только linux.
Есть ли способ добавить windows в меню загрузчика grub, как убедиться, что она сможет запуститься, и это не убьет работающий Linux?
Grub выглядит так:
По команде lsblk результат такой:
Для диска, на котором лежит windows: blkid /dev/sdb1
blkid /dev/sdb1. Странный лейбл раздела с windows 10. Критично ли это?
upd
Добавил руками пункт загрузки в grub как написано в статье.
При выборе — error: invalid EFI file path.
ps. Если бы была возможность зайти в bios, с удовольствием бы снес все и накатил заново винду (или восстановил с загрузочной флешки). С проблемой столкнулся не впервые, но в прошлый раз пришлось прибегнуть к прошивке bios на программаторе. Хотелось бы обойтись без такой хирургии, тк не желательно отдавать ноут на несколько дней.
Как сделать загрузку 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.
Сохраняем файл, выходим из редактора и терминала.
[РЕШЕНО] Как добавить Win7 в grub
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
set default=»0″
if [ «$
set saved_entry=»$
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault <
if [ -z «$
saved_entry=»$
save_env saved_entry
fi
>
function recordfail <
set recordfail=1
if [ -n «$
>
function load_video <
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
>
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos5)’
search —no-floppy —fs-uuid —set=root 30af030e-d7ed-4022-9fbe-b77ce77c8de5
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=auto
load_video
insmod gfxterm
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos5)’
search —no-floppy —fs-uuid —set=root 30af030e-d7ed-4022-9fbe-b77ce77c8de5
set locale_dir=($root)/boot/grub/locale
set lang=ru_RU
insmod gettext
if [ «$
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos5)’
search —no-floppy —fs-uuid —set=root 30af030e-d7ed-4022-9fbe-b77ce77c8de5
insmod png
if background_image /boot/grub/linuxmint.png; then
true
else
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
if background_color 44,0,30; then
clear
fi
fi
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/06_mint_theme ###
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos5)’
search —no-floppy —fs-uuid —set=root 30af030e-d7ed-4022-9fbe-b77ce77c8de5
insmod png
if background_image /boot/grub/linuxmint.png ; then
set color_normal=white/black
set color_highlight=white/light-gray
else
set menu_color_normal=white/black
set menu_color_highlight=white/light-gray
fi
### END /etc/grub.d/06_mint_theme ###
### BEGIN /etc/grub.d/10_linux ###
if [ $
if [ -e $
if hwmatch $
if [ $
set linux_gfx_mode=keep
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=text
fi
else
set linux_gfx_mode=keep
fi
else
set linux_gfx_mode=text
fi
export linux_gfx_mode
if [ «$linux_gfx_mode» != «text» ]; then load_video; fi
menuentry ‘Linux Mint 11, 2.6.38-8-generic (/dev/sda5)’ —class linuxmint —class gnu-linux —class gnu —class os <
recordfail
set gfxpayload=$linux_gfx_mode
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos5)’
search —no-floppy —fs-uuid —set=root 30af030e-d7ed-4022-9fbe-b77ce77c8de5
linux /boot/vmlinuz-2.6.38-8-generic root=UUID=30af030e-d7ed-4022-9fbe-b77ce77c8de5 ro quiet splash vt.handoff=7
initrd /boot/initrd.img-2.6.38-8-generic
>
menuentry ‘Linux Mint 11, 2.6.38-8-generic (/dev/sda5) — recovery mode’ —class linuxmint —class gnu-linux —class gnu —class os <
recordfail
set gfxpayload=$linux_gfx_mode
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos5)’
search —no-floppy —fs-uuid —set=root 30af030e-d7ed-4022-9fbe-b77ce77c8de5
echo ‘Loading Linux 2.6.38-8-generic . ‘
linux /boot/vmlinuz-2.6.38-8-generic root=UUID=30af030e-d7ed-4022-9fbe-b77ce77c8de5 ro single
echo ‘Loading initial ramdisk . ‘
initrd /boot/initrd.img-2.6.38-8-generic
>
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/10_lupin ###
### END /etc/grub.d/10_lupin ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry «Memory test (memtest86+)» <
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos5)’
search —no-floppy —fs-uuid —set=root 30af030e-d7ed-4022-9fbe-b77ce77c8de5
linux16 /boot/memtest86+.bin
>
menuentry «Memory test (memtest86+, serial console 115200)» <
insmod part_msdos
insmod ext2
set root='(/dev/sda,msdos5)’
search —no-floppy —fs-uuid —set=root 30af030e-d7ed-4022-9fbe-b77ce77c8de5
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
>
### END /etc/grub.d/20_memtest86+ ###
### BEGIN /etc/grub.d/30_os-prober ###
menuentry «Windows Recovery Environment (loader) (on /dev/sda4)» —class windows —class os <
insmod part_msdos
insmod ntfs
set root='(/dev/sda,msdos4)’
search —no-floppy —fs-uuid —set=root C20C25CE0C25BDF3
drivemap -s (hd0) $
chainloader +1
>
### END /etc/grub.d/30_os-prober ###
### 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 $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
Disk /dev/sda: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x576dcc52
Device Boot Start End Blocks Id System
/dev/sda1 * 24527 28476 31716353 5 Extended
/dev/sda2 26 24527 196803924 7 HPFS/NTFS
/dev/sda3 1 26 203776 82 Linux swap / Solaris
Partition 3 does not end on cylinder boundary.
/dev/sda4 28476 30402 15471448 12 Compaq diagnostics
/dev/sda5 24527 28476 31716352 83 Linux
Partition table entries are not in disk order