У початковому Grub ви зробите це, встановивши в /boot/grub/menu.lst ключове слово за замовчуванням "збережене", а потім використовуючи ключове слово savedefault у кожному записі меню завантаження.
Оновлено :
Grub2 трохи складніше. Він також все ще розвивається, тому хоча Ubuntu 9.10 і 10.04 обидва використовують Grub2, є достатньо відмінностей у тому, як речі упаковані та налаштовані, щоб зробити речі цікавими.
Ось як зробити трюк savedefault в обох:
Ubuntu 10.04:
напрямки 9.10 - це трюк; Lucid набагато простіше. Докладніші відомості див. У довідці Ubuntu . Вам потрібно внести дві зміни в / etc / default / grub :
Змініть рядок , яка зчитує GRUB_DEFAULT=0
зGRUB_DEFAULT=saved
Додайте рядок із GRUB_SAVEDEFAULT=true
Це воно. Насправді це не так вже й погано, чи не так? Не забувайте бігати sudo update-grub
.
Ubuntu 9.10:
на форумах Ubuntu є декілька хаків, щоб змусити це працювати; мабуть, ключове слово savedefault було баггі в Grub v1.97. Цей пост на форумах Ubuntu надає один метод. Ще одна публікація пропонує трохи простіший метод:
Встановити GRUB_DEFAULT = збережено в / etc / default / grub .
Вставте ці два рядки в /etc/grub.d/40_custom (біля нижньої частини, після рядка "exec tail" ):
saved_entry=${chosen}
save_env saved_entry
Я перевірив цей метод в Ubuntu 9.10, і він працює; наступне завантаження автоматично виділить останній обраний запис. У поєднанні з таймаутом це автоматично завантажиться в останню ОС, яку ви завантажили.
І не забувайте бігати sudo update-grub
. Після закінчення змін. Це важливо і ніяково легко забути….
Grub не має можливості відрізнити перезавантаження від холодного завантаження , тому Grub не може зробити це під час перезавантаження самостійно. Однак якщо ви завантажилися в Linux, ви можете використовувати sudo grub-set-default N
(де N - номер запису меню завантаження, починаючи з 0), щоб встановити запис N, який буде обраний при наступному завантаженні (замість того, щоб запис був збережений).
Теоретично, ви могли зламати разом щось, що зачепилося для процедур вимкнення ( можливо, сценарій Upstart ), який запустив grub-set-default для вас, коли ви сказали Linux про закриття (але не тоді, коли ви сказали йому перезавантажуватися). Однак ви не отримаєте однакову функціональність при відключенні Windows.
Я чув про техніку Grub4DOS або Grub1, яка передбачала встановлення Grub на розділ FAT32 або NTFS / boot - це дозволило б також запустити grub-set-default з Windows, так що ви можете викликати його зі сценарію виходу з системи Windows. Востаннє я щось про це не бачив, на Grub2 це було неможливо. Це, можливо, вже змінилося.
sudo update-grub
. Я перевірив, завантажившись у Windows 7, вимкнувшись, а потім увімкнувши комп’ютер. Ubuntu 10.04 (за замовчуванням) все ще обраний. Я також спробував поставити "save_entry" в / etc / default / grub, замість "збереженого" (не впевнений, як працюють сценарії конфігурації grub), але це не допомогло. Я ще не пробував рішення №1.