Вопрос Как изменить порядок загрузки GRUB?


У меня есть как Windows 7, так и Ubuntu, установленные на общей машине. Поскольку многие не-разработчики используют Windows, я бы хотел изменить порядок загрузки, чтобы упростить их.

В настоящее время порядок загрузки выглядит следующим образом:

  • Ubuntu 11.10 kernelgeneric * 86
  • Ubuntu 11.10 kernelgeneric * 86 (безопасная загрузка)
  • Тест памяти
  • Тест памяти
  • Windows 7 на /dev/sda6

Как изменить порядок по умолчанию, чтобы Windows 7 находилась в верхней части списка?

  • Windows 7 на /dev/sda6
  • Ubuntu 11.10 kernelgeneric * 86
  • Ubuntu 11.10 kernelgeneric * 86 (безопасная загрузка)
  • Тест памяти
  • Тест памяти

310
2018-01-31 16:18


происхождения


Похожие вопросы и ответы: askubuntu.com/questions/52963/... - fossfreedom♦
Вы сделали «sudo update-grub» после смены файла grub? - Tinellus
да, я думаю, что, возможно, забыл это сделать, спасибо! Я попытаюсь обновить результаты. - jeffery_the_wind
kubuntu 14.04 sudo apt-get install kde-config-grub2 затем в системном конфиге goto startup shutdown - n611x007


ответы:


Вы можете использовать простое в использовании приложение GUI, называемое Grub Customizer чтобы сделать вашу жизнь немного легче. Как следует из названия, вы можете сделать гораздо больше, чем просто переупорядочить записи в меню GRUB.

Вы можете установить его:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

(См. Вопрос Ask Ubuntu Безопасны ли PPA для добавления в мою систему и какие «красные флаги» следует соблюдать?.)

Есть How-To Geek статья об этом, Как настроить загрузочное меню Linux GRUB 2 на Easy Way, Взгляните на него, если вы заинтересованы. Кроме того, на форумах Ubuntu есть разрешенная тема, Изменить порядок загрузки в GRUB 2 который упоминает этот инструмент.

Вот несколько скриншотов:

screen_1

screen_2

screen_3


Некоторые способы устранения неполадок:

Настройки Grub Customizer могут работать только в рамках последней установки Linux / Ubuntu, той, которая установила Grub.

Например, если у кого-то установлены две ОС (Windows и Ubuntu), а затем устанавливается третья ОС (Manjaro и т. Д.), А затем пытается выполнить описанный выше ответ, изменения Grub Customizer не будут работать, если они сделаны из второй ОС ( Ubuntu, в примере). Программа должна быть установлена ​​в ОС, поскольку, похоже, Grub Customizer может редактировать файлы Grub, созданные при установке системы, на которой она установлена.

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


278
2018-01-31 17:30



Большинство приветствуется :) Скриншоты взяты из блога, связанного выше: P - Nitin Venkatesh
Это не работает с последним Ubuntu. Можем ли мы получить обновленное сообщение здесь? - A T
Я думаю, что ваш ответ хорош и полезен, поэтому, пожалуйста, не поймите меня неправильно. Хотя инструменты графического интерфейса являются аккуратными и легкими, они скрывают факты. Нижеприведенный ответ Марве обсуждает используемые файлы и как их вручную обновлять, давая представление о том, как работает Grub. Когда GUI Fails, и это будет для некоторых, по крайней мере, заглянуть в основы - в конце концов, это не так сложно, и ручное манипулирование, вероятно, будет проще в долгосрочной перспективе. - barrypicker
Я также столкнулся с проблемами с помощью этого инструмента. Кажется, что он обновляет / etc / default / grub correclty, но затем он говорит о дампе ядра и прерван. - Mauricio Gracia Gutierrez
Для этого требуется обновление, связанное с двумя уровнями текущего меню grub. - Hannu


Вы также можете изменить загрузочную запись по умолчанию grub из командной строки без необходимости установки какого-либо дополнительного инструмента. Это не изменит порядок в списке, но позволит по-разному загружать другую ОС, что похоже на то, что вы можете пожелать в любом случае.

Сначала сделайте резервную копию /etc/default/grub, Если что-то пойдет не так, вы можете легко вернуться к хорошо известной копии:

sudo cp /etc/default/grub /etc/default/grub.bak

Затем отредактируйте файл, используя vim или текстовый редактор по вашему выбору:

sudo vim /etc/default/grub

Найдите строку, содержащую

GRUB_DEFAULT=0

и установите его на

GRUB_DEFAULT=x

где x это индекс элемента меню grub, к которому вы хотели бы загрузиться по умолчанию. Обратите внимание, что пункты меню ноль-индексируются. Это означает, что первый элемент в списке 0 и что шестой пункт на самом деле 5, Таким образом, чтобы загрузить шестой элемент в списке, строка будет читать:

GRUB_DEFAULT=5

Если вы забыли заказ предметов, взгляните на /boot/grub/grub.cfg, Каждая запись меню задается строкой типа:

menuentry 'Ubuntu' [options] {

Вы также можете выбрать значение по умолчанию вместо индекса, например:

GRUB_DEFAULT='Ubuntu'

если бы menuentry 'Ubuntu' линия на /boot/grub/grub.cfg, Это может быть лучший метод, поскольку он не зависит от порядка записей, которые могут измениться.

Чтобы использовать ядро ​​в подменю «Предыдущие версии Linux», используйте:

GRUB_DEFAULT="Previous Linux Versions>x"

(обязательно включите цитаты), где x это индекс старого ядра в подменю или имя ядра, как оно показано в /boot/grub/grub.cfg, Например,

GRUB_DEFAULT="Previous Linux Versions>4.13.0-43-generic"

Затем создайте обновленное меню grub:

sudo update-grub

218
2018-03-07 03:44



Последнее, что я посмотрел grub2, генерирует так много записей на лету, что действительно сложно определить, какой номер использовать для записи. - Joe
Использование индекса может быть довольно грязным - список ОС может измениться после обновления. Но вы можете посмотреть в /boot/grub/grub.cfg и найти имя желаемой ОС по умолчанию. Затем используйте указанное имя вместо индекса. Пример: GRUB_DEFAULT="Microsoft Windows XP Professional (on /dev/sda1)" вместо GRUB_DEFAULT=7 - geekQ
Для этого требуется обновление, связанное с двумя уровнями текущего меню grub. - Hannu
В текущей версии Ubuntu 16.04, если вы хотите выбрать конкретное ядро ​​для загрузки, вам нужно добавить в Advanced options for Ubuntu подменю, например: GRUB_DEFAULT='Advanced options for Ubuntu>Ubuntu, with Linux 4.4.0-34-generic' - Geoff Williams
@BandaMuhammadAlHelal Что будет пытаться загрузить 7-й элемент в вашем списке - это то, что вы хотите? Если вы хотите использовать 6-й элемент в своем списке, используйте GRUB_DEFAULT=5, - Nick


Из сайт tombuntu (статья Том):

GRUB можно настроить с помощью /etc/default/grub файл. До тебя   внесите в него какие-либо изменения, может быть хорошей идеей поддержать его   создание копии:

sudo cp /etc/default/grub /etc/default/grub.bak

Вы можете восстановить копирование резервной копии поверх оригинала:

sudo cp /etc/default/grub.bak /etc/default/grub

Откройте файл с помощью текстового редактора с привилегиями root:

gksu gedit /etc/default/grub

Линия GRUB_DEFAULT=0 означает, что GRUB выберет первое меню   элемент для загрузки. Измените это на GRUB_DEFAULT=saved, Это изменение будет   упростить изменение элемента по умолчанию позже.

Сохраните и закройте файл. Запустите эту команду, чтобы применить свои изменения к   Конфигурация GRUB:

sudo update-grub

Изменение конфигурации, которое мы сделали, позволяет использовать grub-set-default и   grub-reboot, которые будут использоваться в любое время. Они позволяют изменять   загружаемый элемент по умолчанию навсегда или только для следующей загрузки,   соответственно.

Бег grub-set-default или grub-reboot (с sudo) с номером   пункта меню для загрузки (первый элемент равен 0). Эта команда будет   измените значение по умолчанию на второй элемент:

sudo grub-set-default 1

35
2018-06-11 17:04



Этот ответ берется почти дословно из tombuntu.com/index.php/2011/09/25/..., Просьба предоставить кредит, в котором должен быть предоставлен кредит. - James McMahon
Этот ответ, похоже, не изменяет порядок элементов загрузки. - Sparhawk
Я использую Linux Mint Debian Edition. У меня не было / etc / default / grub, но было найдено, что значение GRUB_DEFAULT для изменения было в /etc/grub.d/00_header. После изменения GRUB_DEFAULT в 00_header с моим именем загрузочной записи я просто запускал «sudo update-grub» и voila, успех. - Fuzzy Analysis
Я видел эти же команды в tipsonubuntu.com/2016/07/20/grub2-boot-order-ubuntu-16-04 Я понял, что эти команды будут работать, только если они были выпущены из системы в порядке загрузки 0. - Sun Bear


Я попробовал следующее и получил хорошие результаты.

Откройте окно терминала (Ctrl+Alt+T),

Тип sudo gksu nautilus и нажмите Enter. Введите пароль пользователя.

Перейдите к файлу /boot/grub/grub.cfg, Скопируйте и вставьте файл в тот же каталог, чтобы создать резервную копию файла grub.cfg. Затем дважды щелкните grub.cfg, чтобы открыть файл в текстовом редакторе.

В файле вы найдете строку (set default="0"). Измените 0 на номер строки в Grub, который вы хотите загрузить. Шахта была шестой строкой, поэтому я использовал 5, так как первая строка считается 0. Сохраните файл. Перезагрузите компьютер, и если вы выбрали правильную линию, он будет выделен, когда Grub загрузится.

Удачи


-2
2017-09-19 20:08



как вы можете видеть в начале файла, в нем говорится, что вы не должны этого делать. вместо этого редактировать /etc/default/grub а затем запустить update-grub, - sazary
и я бы не рекомендовал gksu nautilus. Слишком легко сбросить бомбу в вашей системе. - sylvainulg
проверить это сообщение: psychocats.net/ubuntu/bootmenu - tqjustc
По какой-то причине этот ответ отображается как «автоматический ответ» в google при поиске: «порядок загрузки grub change». - lepe
@lepe, не волнуйтесь, для меня по умолчанию linuxandubuntu.com/home/... - vladkras


Откройте окно терминала (Ctrl+Alt+T) или нажмите Alt+F2,

Тип gksu nautilus и нажмите Войти,

Это откроет браузер файлов Nautilus с разрешением на изменение файлов, принадлежащих root.

Перейдите к файлу /boot/grub/grub.cfg и дважды щелкните, чтобы открыть файл в текстовом редакторе.

Вырезать, переместить и вставить разделы в этом файле, принадлежащие разным операционным системам. Ты должен быть очень осторожно при этом, как будто вы делаете это неправильно, вы больше не сможете загружаться. Загрузка Windows всегда может быть восстановлена ​​с помощью инструментов с установочного диска Windows (FIXMBR), который перезаписывает GRUB-MBR с типичным Windows-MBR.

Я тестировал его с Ubuntu 9.04 до 12.04, и он работал нормально каждый раз.

Но я только попытался переместить раздел загрузки Windows в начало списка, чтобы он стал по умолчанию.

Если моя память правильная, каждый раздел меню загрузки в файле начинается с begin ... и заканчивается ...end, И охватывает несколько строк текста.

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


-5
2017-07-05 18:01



Вам не нужно бежать sudo update-grub в какой-то момент? - Eliah Kagan
/boot/grub/grub.cfg перезаписывается при каждом установленном / обновленном пакете, запускающем обновление Grub, эффективно ссылаясь update-grub, И это порождает новый grub.cfg, Поэтому настройка Grub выполняется в файлах в /etc как объяснено другими ответами, чтобы убедиться, что он постоянный. - gertvdijk