Я устанавливаю безголовую машину с Linux / Windows с двойной загрузкой. В основном я хочу, чтобы машина всегда загружалась в Ubuntu, за исключением случаев, когда мне нужно что-то проверить в Windows.
Я установил Windows и Ubuntu, и в настоящее время он загружается в Ubuntu каждый раз. Я хотел бы иметь возможность сказать ему, чтобы он загружался в Windows только при следующей загрузке, а затем, когда я перезагружаюсь из Windows, система возвращается к загрузке Ubuntu.
Я нашел Grub Legacy - раздел 4.3.1 - Загрузка выполняется только один раз, но я использую сервер Ubuntu 14.04, на котором установлена более новая версия grub. Из того, что я прочитал, мне нужно внести некоторые изменения /etc/default/grub
и использовать, sudo grub-set-default
когда я хочу загрузиться в Windows.
Я думаю, что эти изменения начинаются с добавления этого к /etc/default/grub
:
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=false
Каждый раз, когда вносятся изменения, /etc/default/grub
я знаю, что мне нужно запустить,
sudo update-grub
что приводит к:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.13.0-43-generic
Found initrd image: /boot/initrd.img-3.13.0-43-generic
Found linux image: /boot/vmlinuz-3.13.0-32-generic
Found initrd image: /boot/initrd.img-3.13.0-32-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
Found Windows 7 (loader) on /dev/sda1
done
Поскольку Windows является 7-ой опцией в этом списке, я полагаю, что я бы запустил sudo grub-set-default 6
(отсчет на основе 0) - это правильно, и есть ли другой способ получить нумерованный список вариантов загрузки после того, как система уже загружена?
Кроме того, достаточно ли линий /etc/default/grub
для достижения этого поведения или мне нужно добавить дополнительную конфигурацию?
GRUB_DEFAULT=saved
, вам придется сделать это позже вручную, как описано здесь во втором абзаце для Grub2, а затемgrub-set-default 0; grub-reboot 0
grep -i "menuentry '" /boot/grub/grub.cfg|sed -r "s|--class .*$||g"|nl -v 0
menuentry
с подsubmenu
ин/boot/grub/grub.cfg
должен быть передан вgrub-reboot
качествеSUBMENU>MENUENTRY
. Так, например, используя некоторое bash-fu, похожее на @ rubo77, я хотел загрузитьmenuentry
7, однако эта запись находилась в разделе,submenu
который был второй записью в меню верхнего уровня, поэтому мне нужно было'1>6'
вместо этого пройти (одиночные кавычки, чтобы избежать интерпретация оболочки>).Попробуйте установить grub-customizer (руководство по установке ниже) в вашу систему Ubuntu. Этот инструмент с графическим интерфейсом предоставит вам хороший набор опций, с помощью которых вы сможете настроить параметры GRUB, включая имена и порядок параметров загрузки, систему по умолчанию, разрешение экрана, шрифты, фон и т. Д.
Я не уверен, что он имеет возможность установить, что вы хотите, но, по крайней мере, он может показать вам номера ОС. Я думаю, что на них тоже можно ссылаться по имени.
Как установить grub-customizer:
(источник: панель запуска - Даниэль Рихтер )
источник
GRUB_SAVEDEFAULT=false
, но я не могу найти это по нашей ссылке. И вы забыли другие упомянутые там строки!