Зробити "збережену за замовчуванням" роботу з GRUB2 ...?


8

Я щойно встановив операційну систему Moblin. Він використовує GRUB2. На моєму Ubuntu 8.04 використовувався GRUB 0.97, в якому я з комфортом використовував збережений за замовчуванням варіант. Я виявив, що з GRUB2 я не повинен редагувати /boot/grub/menu.lst безпосередньо, але я це зробив :), тому що мій Moblin не містить / etc / default / grub, де вони кажуть, що я повинен зробити потрібну модифікацію.

Тому я зробив наступне, що не спрацювало:

default=saved
timeout=1
#splashimage=(hd0,0)/boot/grub/splash.xpm.gz
#hiddenmenu
#silent
title Moblin (2.6.31.5-10.1.moblin2-netbook)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.31.5-10.1.moblin2-netbook ro root=/dev/sda1 vga=current
        savedefault=1

title Pathetic Windows
        rootnoverify (hd0,1)
        chainloader +1
        savedefault=0

Роблячи це, я мав би автоматично перемикатися між Moblin і Window при кожному завантаженні, але це не працює.

Майже всі інструменти з усунення несправностей в Інтернеті говорять про те, що я повинен дозволити DEFAULT = зберегти параметр у / etc / default / grub, але я не можу знайти цей файл. Будь-яка ідея, що мені ще робити?

Дуже дякую

Оновлення:

Я використовував рівний для підписання, тому що за промовчанням мій menu.lst мав запис за замовчуванням = 0 . Однак за замовчуванням 0 також працює чудово.

Більше того, menu.lst у мене є символічним посиланням на ./grub.conf . Я також помітив, що команди grub-intall та grub-set-default не працюють.


Ви використовуєте нумерацію на основі 0 для розділів дисків - це не схоже на GRUB2, це схоже на Legacy GRUB.
ефеміент

якщо у вас працює /boot/grub/menu.lst, ви не використовуєте Grub2. Grub2 використовує /boot/grub/grub.cfg . Ви можете побачити обидва файли конфігурації, якщо ви оновили до Grub2 зі старої установки, яка використовувала Grub1.
шарлатаний кіхот

Відповіді:


19

Правильний синтаксис для включення savedefaultв /etc/default/grub(GRUB 2) це з лініями:

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true

а не з рядком, DEFAULT=saveякий запропонував енквірер.

Після додавання двох вищевказаних рядків /etc/default/grubпотрібно оновити конфігурацію GRUB як суперпользователя за допомогою наступних команд:

grub-mkconfig
update-grub

Принаймні, на Lubuntu 12.10, grub-mkconfigвін не потрібен (оскільки він без опцій скидає файл конфігурації в stdout). Єдина необхідна команда, update-grubяка насправді викликає grub-mkconfigвідповідний -o fileпараметр.


Одна деталь полягає в тому, що принаймні на Ubuntu записи пам’яті не будуть збережені, якщо ви вирішите спробувати їх швидко перевірити функцію ...
Pricey

1

Я не впевнений, чи дозволяє GRUB =знак; моя конфігурація зчитується default saved.

Ваша проблема полягає в тому, що Pathetic Windowsзапис не робить а savedefault, тому запис за замовчуванням ніколи не змінюється на Windows.

Редагувати : Крім того, savedefaultза замовчуванням зберігається поточний запис; тільки якщо ви дасте йому номер, він збереже інший запис, ніж поточний.

Спробуйте це:

default saved
timeout 1
#splashimage (hd0,0)/boot/grub/splash.xpm.gz
#hiddenmenu
#silent
title Moblin (2.6.31.5-10.1.moblin2-netbook)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.31.5-10.1.moblin2-netbook ro root=/dev/sda1 vga=current
        savedefault

title Pathetic Windows
        rootnoverify (hd0,1)
        chainloader +1
        savedefault

Я не знаю Moblin, але в інших дистрибутивах зазвичай файл конфігурації десь /boot/grub, а не в /etc.


Я поставив би команду savedefault на перше місце, оскільки мені незрозуміло, що більше, якщо виклики ланцюга або ядра вийдуть з завантажувача негайно ..

Я використовую рівний для підписання, тому що за замовчуванням мій menu.lst мав запис за замовчуванням = 0. Однак за замовчуванням 0 також працює чудово. Більше того, menu.lst у мене є насправді символічним посиланням на ./grub.conf Я також перевірив, що команди grub-intall та grub-set-default за замовчуванням не працюють.

Дивіться також мою редакцію. Вам не слід давати savedefaultномер.

синтаксису savedefault Nнемає savedefault=N(знову ж, якщо ви хочете, щоб він зберігав інший запис за замовчуванням - якщо ви хочете поточний запис, відмовтесь N).
крякав кіхот

+1 тому, що це працювало на мене (хоча ОП запитували про grub2)
nhed
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.