/boot/grub/grub.cfg
Редагування параметрів GRUB
sudo nano /etc/default/grubВносимо зміни, зберігаємо файл: Ctrl+O, Enter, виходимо: Ctrl+X
Але цього недостатньо, тому що насправді GRUB читає налаштування з файлу /boot/grub/grub.cfg, і тому…
Прийняття внесених змін
sudo update-grubЧому потрібно виконувати цю команду?
Що можна відредагувати?
Відключення заставки Linux
відображає інформацію про завантаження компонентів системи (це дозволить простежити за процесом завантаження та виявити проблеми).
Цей параметр:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"залишаємо порожнім:
Manjaro: GRUB_CMDLINE_LINUX_DEFAULT="quiet resume=UUID=f1fcafae-b6b2-42a7-8e39-50cd7a159913"
Manjaro: оставил только resume
Если нужно отключить splash только для одной загрузки, то при старте системы нажмите Escape чтобы перейти в меню grub. Далее нажимаем кнопку “e” для перехода к редактированию опций загрузки. Находим параметры ядра (строка начинается со слова linux) и просто удаляем слово splash и нажимаем Ctrl+X чтобы начать загрузку.
Зменшення часу очікування під час завантаження
Исправляем на нужное значение (в секундах) параметр GRUB_TIMEOUT. Например:
Відключення меню GRUB
:sos:
В случае, если на компьютере установлена только одна ОС, можно отключить меню загрузки чтобы grub загружал систему напрямую.
Однако же, иногда может возникнуть необходимость загрузиться с другим ядром или же запустить проверку памяти. для этого предусмотрено “скрытое меню”.
За него отвечает параметр GRUB_HIDDEN_TIMEOUT. в случае, когда установлены другие ОС, этот параметр закомментирован (# в начале строки). в случае с единственной ОС он будет активен.
Значение его задает задержку в секундах. grub приостановит загрузку на заданное количество секунд, давая пользователю возможность вызвать меню загрузки, нажав [Esc].
Если значение установлено в 0, то задержки не будет. Однако, пользователь все равно сможет вызвать отображение меню, удерживая при загрузке [Shift].
Параметр “GRUB_HIDDEN_TIMEOUT_QUIET” отвечает за отображение таймера во время паузы. при значении true таймер показан не будет. false - будет отображаться.
Пример файла grub для VM, где только одна ОС
(показать все строки, кроме закомментированных):
Різне
Що робить update-grub?
update-grub?Команда sudo update-grub використовується для оновлення конфігурації GRUB на основі налаштувань у файлі /etc/default/grub і скриптів у /etc/grub.d/.
Виконує скрипт
/usr/sbin/grub-mkconfig, який зчитує налаштування з:/etc/default/grub(основні параметри завантажувача)/etc/grub.d/(скрипти для створення записів у GRUB)/boot/grub/grub.cfg(поточний конфігураційний файл GRUB)
Якщо
os-proberувімкнено,update-grubшукає інші встановлені ОС і додає їх у меню завантаження.Генерує новий конфігураційний файл
/boot/grub/grub.cfg, який завантажується при запуску системи.
Коли потрібно виконувати update-grub?
update-grub?Виконання sudo update-grub необхідне після змін у:
/etc/default/grub(наприклад, змінаGRUB_TIMEOUT,GRUB_DISABLE_OS_PROBER,GRUB_CMDLINE_LINUX)/etc/grub.d/(якщо додаєте або змінюєте власні завантажувальні записи)Після встановлення або видалення іншої ОС
Оновлення ядра Linux (іноді оновлення ядра виконує
update-grubавтоматично)
Чи потрібно виконувати update-grub після кожного перезавантаження?
update-grub після кожного перезавантаження?Ні, зміни застосовуються лише після оновлення конфігурації. Якщо не змінювати налаштування GRUB, команду виконувати не потрібно.
Що використовувати в інших дистрибутивах?
Debian/Ubuntu/Linux Mint →
sudo update-grubArch Linux/Fedora/Manjaro/OpenSUSE →
Таким чином, update-grub — це просто обгортка навколо grub-mkconfig, яка спрощує процес генерації конфігурації в Debian-based системах.
Warning: os-prober will not be executed to detect other bootable partitions.
При оновленні системи отрумуємо таке попередження:
Це попередження означає, що утиліта os-prober не буде виконуватися для виявлення інших завантажувальних розділів, і відповідно, інші операційні системи (наприклад, Windows або інші дистрибутиви Linux) не будуть автоматично додані до меню завантаження GRUB.
Причина:
За замовчуванням, у нових версіях GRUB (починаючи з GRUB 2.06) змінено поведінку з міркувань безпеки:
os-prober вимкнено, оскільки його виконання може створювати потенційні ризики, особливо якщо використовується шифрування диска.
Як виправити:
Якщо вам потрібно, щоб GRUB знову знаходив інші ОС, вам потрібно вручну ввімкнути os-prober. Для цього:
Відкрийте файл конфігурації GRUB:
Додайте або змініть рядок:
Збережіть файл (
Ctrl+X,Y,Enter).Оновіть конфігурацію GRUB:
Після цього os-prober буде знову виконуватися при оновленні GRUB, і всі доступні ОС будуть додані до меню завантаження.
Альтернативний варіант:
Якщо ви не хочете використовувати os-prober, можна вручну додати потрібні записи в /etc/grub.d/40_custom.
Links
http://ubuntologia.ru (+ описание различных опций, русс)
https://ru.wikibooks.org (вообще все про GRUB2, русс)
http://help.ubuntu.ru/wiki/grub
http://ubuntologia.ru/blog/system/117.html
http://ubuntologia.ru/blog/system/116.html
http://ru.wikibooks.org/wiki/Grub_2
www.ibm.com/developerworks/ru/library/l-lpic1-v3-102-2/
habr.com/post/104536/ - GRUB: Получаем полный доступ к системе
Мультизагрузка с GRUB Mini-HOWTO (Кажется, это древний grub, но все же занимательно)
Мультизагрузка Windows, Linux и Mac OS X (Тут посвежее)
:question: Что за команда? восстановление MBR?
sudo apt-get install mbr sudo install-mbr /dev/sda
Linux: изменить порядок загрузки в GRUB
Было решено заменить загрузку с Ubuntu на Windows, что бы не выбирать систему во время запуска.
Настройки порядка загрузки хранятся в файле /boot/grub/grub.cfg, в первых же строках которого большими буквами сказано:
# DO NOT EDIT THIS FILE
Потому что этот файл создается самой системой во время выполнения команды update-grub на основе файлов:
# ls -1 /etc/grub.d/ 00_header 05_debian_theme 10_linux 20_linux_xen 20_memtest86+ 30_os-prober 30_uefi-firmware 40_custom 41_custom README
И файла /etc/default/grub, в котором мы и будем менять значение порядка загрузки.
Перед изменениями – делаем резервную копию:
# cp /etc/default/grub /etc/default/grub.bkp
Для root-доступа не забыть:
sudo -s
Выглядит файл /etc/default/grub по-умолчанию так:
GRUB_DEFAULT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=10 GRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null || echo Debian GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash” GRUB_CMDLINE_LINUX=””
Строка GRUB_DEFAULT может иметь значение либо числовое (0, 1 и т.д.), либо буквенное – saved.
GRUB_DEFAULT=0 будет загружать первую систему, описанную в файле /boot/grub/grub.cfg, в блоках menuentry.
Обратите внимание, что строки входящие в submenu не учитываем, но сам раздел submenu учитываем – +1.
Проще всего во время загрузки GRUB просто посчитать порядковый номер системы, либо – просмотреть файл /boot/grub/grub.cfg в текстовом редакторе, в котором будет четко видно разделение на «главные» пункты меню, и его «подменю».
Вариант – изменить строку GRUB_DEFAULT= вручную, прямо в файле, и указать номер системы для загрузки.
Либо, вместо номера, указать полное имя:
GRUB_DEFAULT=”‘Windows 7 (loader) (на /dev/sda1)”
Другой вариант – изменить GRUB_DEFAULT на GRUB_DEFAULT=saved, после чего выполнить:
# grub-set-default 4
Этим мы указываем две вещи:
а) GRUB_DEFAULT=saved – GRUB будет загружать ту систему, которая была загружена последней;
б) такой системой мы устанавливаем запись №4, т.е. – Windows 7 (loader).
Причем второй пункт выполнять необязательно – достаточно будет 1 раз выбрать систему во время загрузки – и она будет сохранена как «система по-умолчанию».
Так же, вместо указания «индекса» системы – можно указать полное ее полное «имя»:
# grub-set-default “‘Windows 7 (loader) (на /dev/sda1)”
После чего выполнить:
# update-grub
//Generating grub configuration file … Найден образ linux: /boot/vmlinuz-3.13.0-24-generic Найден образ initrd: /boot/initrd.img-3.13.0-24-generic Найден образ linux: /boot/vmlinuz-3.5.0-46-generic Найден образ initrd: /boot/initrd.img-3.5.0-46-generic Найден образ linux: /boot/vmlinuz-3.5.0-37-generic Найден образ initrd: /boot/initrd.img-3.5.0-37-generic Найден образ linux: /boot/vmlinuz-3.5.0-26-generic Найден образ initrd: /boot/initrd.img-3.5.0-26-generic Найден образ linux: /boot/vmlinuz-3.5.0-17-generic Найден образ initrd: /boot/initrd.img-3.5.0-17-generic Found memtest86+ image: /boot/memtest86+.elf Found memtest86+ image: /boot/memtest86+.bin Найден Windows 7 (loader) на /dev/sda1 завершено//
Исправление заставки
Чиним сплэш в Ubuntu 10.04
После установки проприетарных драйверов видео (по крайней мере от nVidia, насчет ATI не знаю) в Ubuntu 10.04 сплэш при загрузке по какой-то причине показывается в маленьком разрешении экрана и поэтому выглядит увеличенным. Исправить это очень просто.
Открываем файл конфигурирования загрузчика системы GRUB 2:
sudo nano /etc/default/grub
Добавляем в него такую строку:
Вместо 1024x768 пишите своё разрешение. Куда добавлять — не важно, я добавил сразу после GRUB_CMDLINE_LINUX.
После чего нам нужно обновить конфигурацию GRUB, чтобы произведенные нами изменения записались в grub.cfg. Для этого существует следующая команда:
sudo update-grub
Теперь загрузочная заставка должна быть нормальных размеров.
Что-то такое случилось…
как-то поставил Минт вместо другого Минта, который был прописан с виндой на grub’е. Установщик винду не заметил, предлагал поставить Минт рядом с Минтом. Поэтому выбрал пункт вручную. Взял, затер области со старым Минтом, создал новые и установил туда новый Минт. Все было Ок, пока не решил запустить винду. А она взяла и исправила “ошибки” на диске. Пытался исправить по вышеприведенной инструкции - install grub ругался что-то про canonical, слишком маленькую загрузочную область, писал error. Не знаю, что именно повлияло, но Загрузил gparted, и установил boot на раздел с линуксом вместо винды - и grub успешно загрузился.
Last updated