LVM + lilo > GPT + EFI (или почему GRUB такой неуклюжий)
Мало кто знает и понимает, что MBR по сути своей есть величайшая ошибка человечества. Ну послушайте, ну серьезно, кому в голову пришло смешивать в одном блоке данные, необходимые для загрузки системы и сведения о разделах?
Я еще раз повторю, не надо сейчас мне говорить «так сложилось», а включите логику. MBR ужасна.
Еще ужаснее то, что она пытается исправлять ошибки проектирования костылями. Чтобы избежать идиотского ограничения в 4 раздела в одной MBR-записи нужно предложить концепцию «расширенного» раздела (логически), обманывая и создавая кучу полупустых MBR по всему диску (физически). Опять же, не буду на этом подробно останавливаться, специалисты поймут, остальным неважно.
Еще одна проблема MBR заключается в том, что разделы нельзя просто так увеличивать (ну, кроме последнего). Хотите изменить размер раздела? Ну, это просто — нужно удалить его и заново создать, передвинув его конец. Глубокоуважаемый товарищ amarao запилил прекрасную утилиту ptmax, которая позволяет хоть как-то снять эту боль, но послушайте, еще раз, ведь есть же другой путь!
Отдельным пунктом идет прекрасное поведение загрузчика GRUB с MBR. Ну, поскольку загрузчику мало 446 байт для полноценной жизни, он помещает свой core.img в «зазор» между окончание MBR и началом первого раздела (который предлагается начинать с 1 мегабайта, хотя раньше было ближе).
Эээээ, нет. GPT лечит проблему того, что в MBR в одном флаконе собран уж и еж. GPT как бы говорит нам, что теперь нет никаких скрытых областей, куда GRUB будет что-то писать, вот для него отдельный раздел. Отлично. Но куда деваться от того, что разделы все равно нельзя увеличить?
Ну, например, поставил я систему. Выделил под rootfs 32 Гб, а завтра понял, что мне надо 64. И как жить? Что делать? Если я создал после rootfs раздел под swap, то расширение раздела под rootfs выглядит вот так:
1. Выключить swap
2. Снести раздел под swap
3. Изменить размер раздела под rootfs
4. Расширить файловую систему rootfs
5. Создать раздел под swap
6. Включить swap
Все бы хорошо, но если у меня за rootfs создан раздел с данными и передвинуть его я не могу? Ну, тогда нужно страдать.
О да, вот это уже круто! Ведь тут вопрос разделов вынесен за скобки вообще. Я могу создать сколько угодно разделов и не задумываться о том, как их потом увеличивать. Круто? Да.
Но к сожалению, логика того, что LVM заменяет собой MBR и GPT приходит не ко всем. До сих пор целый ряд подходов системных администраторов косно крутится вокруг логики «давайте создадим раздел на весь диск, а раздел добавим в LVM».
Ну и крутотенюшка заканчивается, когда Вы хотите отказаться от MBR или GPT полностью, а остаться только с LVM.
Попытка с инсталлятором Ubuntu
Note: здесь и далее я буду говорить про Ubuntu, если уважаемое сообщество подскажет, как обстоят дела с этим вопросом в других дистрибутивах, буду рад.
«В чем проблема? Я ж видел даже в инсталляторе Ubuntu строчку про LVM!» — скажет любой, кто устанавливал хоть раз, например, Ubuntu и будет прав.
Да, ну давайте посмотрим, какой ад вариант нам предложит инсталлятор.

Здесь прекрасно все. От мелочей до важного.
Для начала, оцените иронию — под LVM отдан раздел, а не диск. Почему? Я оставлю это на совести тех, кто это придумал. Особый цинизм в том, что раздел расширенный, т.е. на диске будет болтаться два блока с MBR. Окей.
Потом мы оценим обычный раздел /boot. Да, Вы хотите LVM, но у Вас будет и MBR тоже. Почему так? Ну раньше это можно было оправдать тем, что grub не умел эти Ваши LVM, но он давно уже умеет.
Ну и плавно к важному. Никого не смущает, что по сути LVM натягивается, как сова на глобус поверх MBR? Это как понимать? Зачем это вообще?
Да закопайте уже стюардессу
Отказаться от MBR просто — мы же можем отдать целый диск в подчинение LVM? Можем и нужем. Как это сделать из инсталлятора? Увы, никак. Руками. То есть, перед шагом Partition disks нужно переключиться в соседний tty и руками сделать следующее (подразумевается, что диск, куда мы хотим установить систему, зовут /dev/sda):
Тут я отдаю 6 гигабайт на rootfs, оставшееся на swap, изменить по желанию.
Ну и дальше на этапе разбивки диска мы увидим созданные нами разделы, можем распределить, что и куда дальше.
Хьюстон, у нас проблемы
И все будет хорошо, но ровно до этапа установки загрузчика. Инсталлятор предложит установить GRUB. Мы, конечно, согласимся. А что не так?
Напомню, что LVM обычно отступает 1Mb от начала физического носителя. Откуда я знаю? Ну команда
покажет это. Что для нас это означает? Первый мегабайт диска свободен, никто не мешает GRUB записать туда свои 446 байт загрузчика, плюс core.img. Вот только без MBR он не сможет это сделать!
Еще раз, я поражаюсь нежности GRUB: тебе дают диск, давай уже, сделай так, чтобы ты оттуда мог грузиться. Ты умеешь LVM, в чем проблема?
Даже попытки вызвать grub-install вручную с параметром -s привели только к тому, что «unable to identify a filesystem in hostdisk//dev/sda: safety check can’t be performed».
Воскуривание сырцов открывает жестокую правду: GRUB просто не умеет выполнить инсталляцию самого себя, если нет живого MBR с хотя бы одним разделом.
Лирическое отступление: истинные бойцы с презрением скажут: «Зачем тебе вообще возиться с этим отсталым GRUB? Приходи же в нашу церковь EFI!».
Вообще я согласен, с EFI все гораздо проще, но есть проблема с кучей Legacy машин, которые EFI уметь не будут. То есть, заставить EFI грузиться как BIOS обычно можно, обратное, увы, не всегда выполнимо. А я хочу LVM и мороженку, тьфу, загрузку не только с EFI.
В целом, EFI задуман достаточно неплохо. Нет никаких скрытых тебе областей, создай раздел, положи туда загрузчик в виде .efi-файла, 7 строк конфигурации и загружайся.
Нет, подождите. Опять создай раздел? Может быть кто-нибудь догадается в спецификацию EFI добавить поддержку LVM? Пожалуйста?
В качестве выхода, конечно, можно взять небольшую флешку и отформатировать ее в желанный для EFI FAT целиком, без разделов. Уже хлеб, но все равно в системе придется держать два диска, один для EFI, другой целиком под LVM, где уже система.
Тут, думаю, раздастся громкий WAT. Да, увы, так оно и есть, это настоящий и серьезный WAT.
Никогда не думали, почему GRUB так монструозен? Потому что обычно он хорошо подходит для сложных ситуаций, когда одну систему мы хотим грузить так, тут хотим опций, там хотим вот этого и тут хотим того. Но минуточку, для системных администраторов, где уже все давно виртуализировано, это обычно нонсенс. Нужно просто загружать систему с минимальной болью.
И что мы выясняем? Что lilo отлично умеет устанавливаться на диск с LVM; умеет /boot в LVM; не требует, чтобы на диске был создан хоть какой-то MBR и замечательно работает на той же Ubuntu 16.04, т.е. пакет есть и он адекватен.
Беда в другом. Разработка lilo прекратилась в конце 2015 года. Ну, с другой стороны, оно умеет все, что надо, чтобы загружать современную систему целиком на LVM.
Заключение
Еще раз, пожалуйста, поймите главный message этой статьи — откажитесь от обычной таблицы разделов. Будь то MBR, будь то GPT, оно Вам не нужно, если есть LVM. Никогда не отдавайте под LVM разделы (кроме тех случаев, когда нужен какой-нибудь извращенный dual-boot с Windows), в этом просто нет смысла.
И давайте вместе надеяться, что когда-нибудь у нас будет поддержка LVM в EFI. А пока будем страдать, тьфу, использовать lilo.
Загрузчики LILO и GRUB
Добрый день, в данной статье пойдет речь о загрузчиках ОС. Очень часто возникает необходимость к ним обратиться: установлено две операциионные системы, не загружается операционная система.
Перед тем, как ядро запустит init, загрузчик операционной системы запускает ядро. Иногда вам нужно дать указания загрузчику, чтобы он загрузил различные ядра или операционные системы, и начал их работу в различных режимах. Это особенно важно при попытке починить систему, в которой есть не исправность, мешающая полной загрузке. Чтобы устранить такую проблему, вам понадобиться однопользовательский режим или альтернативное ядро.
Загрузчик операционной системы загружает образ ядра в память и передает контроль за CPU новому образу, по возможности снабжая его различными параметрами. Эти параметры — это простые текстовые строки вроде -s для загрузки в однопользовательском режиме и root=partition для использования partition как корневой файловой системы вместо заданной по умолчанию. Вы можете установить номер рабочего уровня как параметр, чтобы система загружалась на рабочий уровень отличный от заданного по умолчанию.
Перед тем как указать имя ядра и параметры, вам необходимо получить приглашение к загрузке. К сожалению, существует несколько различных загрузчиков операционных систем, и из-за того, что вы можете управлять поведением загрузчика, версии Linux могут изменять свое содержимое.
Следующие разделы расскажут вам, как получить приглашение к загрузке для того, чтобы ввести имя ядра и параметры. Если вы хотите узнать, как установить загрузчик операционной системы или сменить его конфигурацию, обратитесь к справочным страницам «man».
Загрузчик LILO.
LILO (загрузчик Linux) существует так же долго как и ядро Linux. Приглашение к загрузке LILO обычно заканчивается на boot:. Если вашу систему загружает LILO, то, скорее всего, во время загрузки вы видите причудливые картинки на экране, потому что так определено по умолчанию для многих версий, включая Red Hat Linux. Если вы увидите подобный экран, найдите часть, на которой написано «нажмите Ctrl+X для текстового режима». Если увидите это сообщение, нажмите Ctrl+X, чтобы получить приглашение к загрузке.
Если система по умолчанию в текстовом режиме, просмотрите приглашение, как только оно появится. Если приглашение гласит LILO и больше ничего, нажмите клавишу Shift, чтобы получить оставшуюся часть приглашения. С другой стороны, если вы сразу получите приглашение к загрузке, вам следует быть внимательным, так как, скорее всего, система загрузится, если вы ни чего не напечатаете за определенный промежуток времени.

Когда вы находитесь в приглашении к загрузке LILO, нажмите клавишу Tab, чтобы вывести список опций ядра и операционной системы. Имя ядра по умолчанию, скорее всего, что-то вроде 'linux'. Чтобы загрузить это ядро без всяких опций, введите 'linux'. Чтобы использовать опции, определите их после имени ядра:
linux option1 option2 .
Например, для запуска вашей системы в однопользовательском режиме, наберите это:
Или, чтобы загрузить linux в однопользовательском режиме с корневой системой как /dev/hda3, вместо обычных настроек по умолчанию, наберите это:
linux root=/dev/hda3 -s
Загрузчик GRUB.
GRUB расшифровывается как Grand Unified Bootloader, система, которая постепенно заменяет LILO. У GRUB есть много сногсшибательных особенностей, но что наиболее важно, так это его способность управлять файловыми системами, так что вы можете читать файлы, не загружая ядра.
Администраторы Wisegiiy Solaris и BSD говорили, что первое время они просто наслаждались этой способностью.
У GRUB есть меню интерфейса, в котором легко ориентироваться, но если вы хотите загрузить систему с другим ядром, изменить разбиение корня, или ввести дополнительные параметры ядра, вам следует попасть в мини-оболочку. Нажмите с в меню, чтобы получить это приглашение:
grub>
Скажем, что вы хотите загрузить ядро в /boot/vmlinuz с корнем в /dev/hda3. Кроме того, в вашей системе все перемешано, так что вам нужен однопользовательский режим с опцией ядра -s. Наберите следующее в приглашении GRUB:
kernel /boot/vmlinuz root=/dev/hda3 -s
Строка root (hd0, 2) устанавливает понятие GRUB текущего раздела корня — то есть, файловую систему, где GRUB ожидает найти ядро, hdo — это первый накопитель на жестком диске (то есть первый диск, который найдет GRUB; например, устройство Linux /dev/hda если это ваш первый жесткий диск). Однако, 2 описывает третий раздел (/dev/hda3) из-за того, что нумерация разделов GRUB начинается с 0.
Слово kernel устанавливает образ ядра и его параметры, /boot/vmlinuz относится к файлу образа ядра на (hd0, 2) . К сожалению, GRUB не передает просто так информацию из предыдущей строки root () ядру, так что вам нужно всегда определять root=partition как параметр ядра.
Вы можете совместить строки root и kernel путем предопределения образа ядра с помощью разбиения корневого раздела GRUB. Следовательно, предыдущие две строки могли быть написаны как одна:
kernel (hd0, 2) /boot/vmlinuz root=/dev/hda3 -s
Последняя строка, boot, дает указания GRUB загрузить и выполнить образ ядра.
На определенных системах (особенно тех, что с дисками SCSI и готовыми ядрами), вам может понадобиться исходный диск RAM:
В случае, если вы пытаетесь загрузить сегмент с другим загрузчиком (таким как сегмент Windows) собственноручно с GRUB, попробуйте следующий набор команд, где partition использует синтаксис устройства GRUB, о котором было рассказано ранее (например, hd(0, 1)):
rootnoverify partition makeactive chainloader +1 boot
Другие загрузчики операционных систем.
Существует много других способов загрузить ядро, даже из DOS посредством LOADLIN или SYSLINUX, с помощью сети, или даже прямо из PC BIOS с помощью LinuxBIOS! Большинство других загрузчиков операционной системы работают как LILO, хотя некоторые не используют клавишу Tab, чтобы регистрировать опции. Скорее всего, вам нужно уделить внимание диагностике загрузки для получения этой информации. Однако, способ, которым вы задаете параметры обычно тот же самый, что и в LILO и GRUB.
Зачем нужен загрузчик grub lilo
Wikipedia сообщает «GNU GRUB (англ. GRand Unified Bootloader) — загрузчик операционной системы от проекта GNU. GRUB позволяет пользователю иметь несколько установленных операционных систем и при включении компьютера выбирать одну из них для загрузки.» GRUB 2
Зачем нужен GRUB, если есть LILO/ELILO? [ править ]
- Поддержка модулей Raid, LVM файловых систем вкупе с интерактивным интерфейсом позволяют выбрать, что загружать откуда угодно в процессе загрузки (а не установки загрузчика).
- Возможность multiboot (для загрузки, к примеру, XEN)
Как установить GRUB? [ править ]
Установить дистрибутив с GRUB либо мигрировать загрузчик вручную.
Последний пункт выполняет генерацию конфига GRUB на основе шаблонов/скриптов в /etc/grub.d/. Редактировать полученный конфиг руками не рекомендуется т.к. он будет уничтожен следующей автогенерацией (выполняемой, к примеру, installkernel-ом).
Проверьте содержимое /etc/sysconfig/grub2: если там нет раскомментированной переменной GRUB_AUTOUPDATE_DEVICE (при смене загрузчика вручную не будет, т.к. она добавляется только alterator-grub), добавьте устройство или их список; если root/boot на md raid1, следует задать список дисков, на которых он размещён — например, не ‘/dev/md0 ‘, а ‘/dev/sdb /dev/sda ‘. После этого стоит выполнить grub-autoupdate.
Как передать свои параметры загрузки ядра? [ править ]
Для однократного изменения таковых при загрузке GRUB следует:
- нажать «e» при курсоре на цели загрузки, соответствующей используемому экземпляру ALT;
- в открывшемся редакторе отыскать строку, начинающуюся с linux /boot/vmlinuz;
- в её конец дописать требуемые параметры, отделив пробелом;
- нажать F10.
Если нужно, чтобы эти параметры ядра передавались ядру при каждой загрузке, надо прописать их в /etc/sysconfig/grub2 и дать команду update-grub ; подробнее см. следующий пункт.
Где отредактировать параметры ядра? [ править ]
Для постоянного применения иных параметров загрузки следует изменить конфигурацию загрузчика.
- Параметры ядра содержатся в /etc/sysconfig/grub2
- После редактирования этого файла нужно вызвать grub-mkconfig -o /boot/grub/grub.cfg
В /etc/sysconfig/grub2 поддерживаются следующие опции:
обновлять ли конфиг файл из файлтриггера установки/удаления ядер (по умолчанию true)
опции загрузки ядра
имя автообновляемого конфигфайла. (по умолчанию /boot/grub/grub.cfg)
добавлять ли симлинки в меню (добавлять, не добавлять, добавлять только /boot/vmlinuz [по умолчанию])
добавлять ли failsafe-пункты (добавлять, не добавлять, добавлять только для /boot/vmlinuz [по умолчанию])
Как дописать свои собственные пункты меню? [ править ]
- Теоретически вам не должно хотеться этого делать. Расскажите (в рассылке sisyphus@, к примеру) зачем вам этого захотелось — возможно, придумается какой-то новый общий случай.
- Если вам всё же хочется — допишите то, что считаете нужным в /etc/grub.d/40_custom
Например, если автоматически не обнаружилась Windows 10, может помочь такое описание пункта меню:
Где UUID — UUID раздела с загрузчиком Windows. Узнать UUID раздела можно командой blkid
- После редактирования этого файла нужно вызвать # grub-mkconfig -o /boot/grub/grub.cfg
Как выбрать ядро для загрузки по умолчанию (первый пункт grub)? [ править ]
Командой installkernel <имя ядра> , можно с переменной — к примеру, для текущего:
Внесено предложение (altbug #38888) по добавлению к утилите update-kernel опции -d, —default — установка ядра по умолчанию. Будет ли оно реализовано — неизвестно.
Как выбрать то, что будет загружаться автоматом? [ править ]
данный пункт очень похож на следующий, но на этот пункт есть ссылки
- Выберите нужный вам пункт один раз при загрузке. savedefault должен сохранять ваш выбор на будущее.
- Не нравится такое поведение? Отключите GRUB_SAVEDEFAULT в /etc/sysconfig/grub2
- NB: в 2.00+ поведение изменилось, теперь дополнительные ядра для того же корня спрятаны в субменю «Advanced options».
Как отучить GRUB2 запоминать последний выбранный пункт? [ править ]
Поведение Grub в плане запоминания пунктов зависит от переменных GRUB_DEFAULT и GRUB_SAVEDEFAULT в файле /etc/sysconfig/grub2 . GRUB_DEFAULT может содержать пункт меню для загрузки, либо служебное слово ‘saved’. В случае, если GRUB_DEFAULT=’saved’ (в ALT по-умолчанию), загрузка определяется содержимым файла /boot/grub/grubenv : утилита grub-set-default задаёт значение переменной saved_entry, утилита grub-reboot — значение переменной next_entry (используется однократно при следующей загрузке, потом очищается). Утилита grub-entries (altbug #36048) выводит список существующих вариантов (правда неполный с точки зрения допустимых вариантов написания: не выводятся смешанные варианты выбора и выбор на основе ID пунктов меню). В случае, если GRUB_SAVEDEFAULT=true (в ALT по-умолчанию), в пункты меню Grub добавляется команда savedefault, вызывающая изменение переменной saved_entry в файле /boot/grub/grubenv .
Способ 1 [ править ]
В файле /etc/sysconfig/grub2 изменить значение GRUB_SAVEDEFAULT на false, перегенерировать конфиг grub:
посмотреть имеющийся список вариантов загрузки утилитой grub-entries:
задать нужный вариант загрузки:
цифровой вариант лучше не использовать, так как номера строк изменяются при удалении и добавлении ядер, но его вполне можно использовать для указания варианта на следующую перезагрузку утилитой grub-reboot.
Способ 2 [ править ]
В файле /etc/sysconfig/grub2 изменить строку
где n номер пункта меню, либо на
Вариант с названием предпочтительнее, поскольку после обновления ядра количество пунктов в меню увеличится и нумерация некоторых пунктов изменится. Внимание! Нумерация пунктов начинается с 0. Список пунктов можно получить по команде
Например, пусть мы имеем следующие пункты меню (этот пример не учитывает текущее состояние с подменю; оставлено в качестве примера, удобнее использовать grub-entries, как в первом варианте):
и хотим, чтобы по умолчанию грузился Windows. Тогда в /etc/sysconfig/grub2 пишем
Потом в терминале от пользователя root:
Перезагрузка. Так как в GRUB_DEFAULT задано конкретное значение, а не ‘saved’, переменная GRUB_SAVEDEFAULT значения не имеет.
Как однократно выполнить загрузку произвольного пункта меню? [ править ]
Иногда бывает удобно загрузиться с произвольным пунктом меню, но не менять текущий вариант. Это удобно, например, для тестирования нового ядра, когда надо иметь возможность вернуть старое ядро простой перезагрузкой. Для этого надо настроить Grub в соответствии со способом 1 предыдущего пункта, после чего можно задать пункт меню для следующей загрузки командой grub-reboot и запустить команду reboot. В момент начала загрузки конфигурация Grub автоматически вернётся в исходное состояние, и следующая загрузка компьютера произойдёт по-старому. Это аналогично использованию опции -R загрузчика Lilo.
Как загрузить Xen? [ править ]
Xen грузится с помощью multiboot:
- проверить, что вы используете grub2 >= 1.98-alt11
- apt-get install xen xen-libs xen-runtime xen-hypervisor
- запустить grub-mkconfig -o /boot/grub/grub.cfg
- выбрать соответствующий пункт при загрузке (savedefault запомнит выбор на будущее)
Как включить работу с последовательным портом? [ править ]
Примерно такими строчками в /etc/sysconfig/grub2:
(см. также). Не забываем про grub-mkconfig.
Загрузка Linux и Windows c разных жестких дисков [ править ]
Grub грузится с основного диска на котором Linux, Windows установлен на дополнительный жесткий диск. В 40_custom добавляем:
Если жестких дисков больше двух, играемся с hdX.
Как установить пароль на редактирование параметров ядра? [ править ]
По умолчанию при загрузке любой пользователь может добавить/изменить параметры. Этого можно избежать, если установить пароль. Проще всего сделать это в центре управления системой. Для этого потребуется пакет alterator-grub и выполнить следующие действия:
- Зайдите в ЦУС ( acc ), перейдите в режим эксперта, и в разделе «Система» откройте «Загрузчик GRUB».
- Установите флажок «Установить или сбросить пароль» и введите необходимый пароль.
После нажатия на кнопку «Установить» (переконфигурация GRUB происходит автоматически) при запуске системы и попытке либо изменить параметры загрузки (клавиша Е), либо выбрать другой пункт загрузочного меню, будет требоваться логин/пароль. Логин по умолчанию сейчас boot (altbug #33098)
Также для ограничения загрузки (как с изменением параметров, так и без) можно добавить в файл /etc/grub.d/40_custom строки:
В случае дистрибутивов серии 6.0 отключить графику в /etc/sysconfig/grub2 (см. altbug #26198):
Для защиты паролем возможности загрузки именно с изменёнными параметрами придётся добавить в переменную CLASS в скрипте /etc/grub.d/10_linux опцию --unrestricted (внимание: этот скрипт по состоянию на версию 2.00-alt20 входит в пакет grub-common и не помечен как %config, поэтому будет перезаписан при обновлении!).
После подобных операций следует перегенерировать конфигурацию командой grub-mkconfig -o /boot/grub/grub.cfg (либо grub-mkconfig , в зависимости от дистрибутива). В случае использования alterator-grub — это не требуется.
Как переустановить GRUB? [ править ]
После обновления до grub2-pc-2.00-alt1 операционная система может не загрузиться. В таком случае, необходимо иметь под рукой любой live disk. Далее:
- Загружаемся с rescue-cd, например ALT Linux Rescue
- Если использован ALT Linux Rescue:
- Если в используемом LiveCD нет mount-system, делаем самостоятельно (предполагая/зная, что корень на /dev/sda2):
- Скачиваем предыдущую версию пакета:
- Устанавливаем rpm
- Переконфигурируем меню grub
После описанного выше, у меня загрузилась операционная система.
Как установить/восстановить загрузочную запись grub? [ править ]
- Если использован ALT Linux Rescue:
- Если в используемом LiveCD нет mount-system, делаем самостоятельно (предполагая/зная, что корень на /dev/sda2):
После того как проведены подготовительные действия и сделан сhroot, необходимо выполнить
то выполните команду:
если же используется EFI-режим, может потребоваться восстановить загрузчик в ESP-разделе (EFI System Partition), который монтируется в /boot/efi:
Что за жалобы про BIOS Boot Partition? [ править ]
При загрузке под PC BIOS используется MBR и небольшая свободная область диска после него (31 килобайт до 63-го сектора) — соответственно первая стадия и core.img; при использовании UEFI ожидается GPT-разбивка загрузочного диска, при которой нет ни MBR, ни этой области. Отсюда возникает необходимость встроить вторую стадию загрузчика куда-то ещё. Таким местом и решили взять определённый в GPT тип раздела BIOS Boot Partition.
Инструмент разбивки дисков в составе инсталятора ALT Linux сделает такой раздел автоматически под UEFI, если разбиваете вручную или большой диск для BIOS — может потребоваться создать раздел минимального объёма (RED Hat рекомендует 1 мегабайт) с типом «bios boot partition» в терминологии alterator-vm либо меткой «bios_grub» в терминологии parted .
Во время загрузки Windows искажена картинка, что делать? [ править ]
Если при загрузке, например, Windows 7 часть экрана содержит «шум», возможно, отдалённо напоминающий картинку заставки GRUB — попробуйте выровнять используемые видеорежимы VESA:
- в файле /etc/sysconfig/grub2 поменяйте GRUB_GFXMODE='800x600' на GRUB_GFXMODE='640x480'[1] ;
- выполните команду update-grub или grub-mkconfig -o /boot/grub/grub.cfg
Вы можете сделать заставку текстовой, указав GRUB_GFXMODE='console'.