From 2203e654b389586650d553251b04544a34f189bf Mon Sep 17 00:00:00 2001 From: Sn4il Date: Mon, 2 Sep 2024 15:54:35 +0300 Subject: LFS 12.2 --- lfs-12.1-sysv/chapter10/grub.html | 354 -------------------------------------- 1 file changed, 354 deletions(-) delete mode 100644 lfs-12.1-sysv/chapter10/grub.html (limited to 'lfs-12.1-sysv/chapter10/grub.html') diff --git a/lfs-12.1-sysv/chapter10/grub.html b/lfs-12.1-sysv/chapter10/grub.html deleted file mode 100644 index e13115c..0000000 --- a/lfs-12.1-sysv/chapter10/grub.html +++ /dev/null @@ -1,354 +0,0 @@ - - - - - - 10.4. Использование GRUB для настройки процесса загрузки - - - - - - - - -

- 10.4. - Использование GRUB для настройки процесса загрузки -

-
-
- [Примечание] -

- Примечание -

-

- Если ваша система поддерживает UEFI и вы хотите загрузить LFS с - помощью UEFI, вам следует пропустить инструкции на этой странице, - но все равно изучить синтаксис grub.cfg и способ указания раздела в файле с этой - страницы, а также настроить GRUB с поддержкой UEFI используя - инструкции, приведенные на - странице BLFS. -

-
-
-

- 10.4.1. Введение -

-
- [Предупреждение] -

- Предупреждение -

-

- При неправильной настройке GRUB ваша система перестанет - загружаться без вспомогательно загрузочного CD-ROM или - USB-накопителя. Для загрузки системы LFS этот раздел - необязателен. Вы можете просто использовать существующий - загрузчик, например Grub-Legacy, GRUB2 или LILO. -

-
-

- Убедитесь, что аварийный загрузочный диск готов к «спасению» компьютера, - если он перестанет загружаться. Если у вас еще нет загрузочного - диска, вы можете создать его. Для этого необходимо перейти в раздел - BLFS и установить программу xorriso из пакета - libisoburn. -

-
cd /tmp
-grub-mkrescue --output=grub-img.iso
-xorriso -as cdrecord -v dev=/dev/cdrw blank=as_needed grub-img.iso
-
-
-

- 10.4.2. Соглашения об именовании GRUB -

-

- GRUB использует собственную структуру именования дисков и разделов - в виде (hdn,m), где - n — номер жесткого диска, а - m — номер раздела. Номера - жестких дисков начинаются с нуля, а номера разделов начинаются с - единицы для обычных разделов (с пяти для расширенных разделов). - Обратите внимание, что это отличается от более ранних версий, где - оба номера начинались с нуля. Например, раздел sda1 это (hd0,1) в GRUB, а sdb3 (hd1,3). В отличие от Linux, GRUB не - считает приводы CD-ROM жесткими дисками. Например, если - используемый CD-привода определяется как hdb, а второй жесткий диск как hdc, этот второй жесткий диск все равно будет - (hd1). -

-
-
-

- 10.4.3. Настройка -

-

- GRUB записывает данные на первый физический сектор жесткого диска. - Эта область не является частью какой-либо файловой системы. - Программа в загрузочном разделе имеет доступ к модулям GRUB - расположенным по умолчанию в /boot/grub/. -

-

- Расположение загрузочного раздела - это выбор пользователя, который - влияет на конфигурацию. Одна из рекомендаций заключается в том, - чтобы иметь отдельный небольшой раздел (примерно 200 МБ) - исключительно для загрузочной информации. В этом случае каждая - сборка, будь то LFS или другой дистрибутив, может обращаться к тем - же загрузочным файлам, а доступ может быть получен из любой - загруженной системы. Если вы решите так сделать, вам необходимо - примонтировать отдельный раздел, переместить все файлы из текущего - каталога /boot (например, ядро Linux, - которое вы создали на предыдущем этапе) в новый раздел. Затем нужно - отмонтировать раздел и примонтировать его заново в каталог - /boot. Когда вы это сделаете, - обязательно обновите данные в файле /etc/fstab. -

-

- Оставить /boot на текущем разделе LFS - это тоже рабочее решение, но его настройка для загрузки нескольких - систем сложнее. -

-

- Используя информацию выше, определите соответствующие точки - монтирования для корневого раздела (или загрузочного раздела, если - используется отдельный). В следующем примере предполагается, что - корневым (или отдельным загрузочным) разделом является sda2. -

-

- Установите файлы GRUB в каталог /boot/grub и настройте загрузочный сектор: -

-
- [Предупреждение] -

- Предупреждение -

-

- Следующая команда перезапишет текущий загрузчик. Не выполняйте - эту команду, если это не нужно, например, если вы используете - сторонний менеджер загрузки для управления главной загрузочной - записью (MBR). -

-
-
grub-install /dev/sda
-
- [Примечание] -

- Примечание -

-

- Если система была загружена с использованием UEFI, grub-install попытается - установить файлы для x86_64-efi, но эти файлы не были - установлены в - Глава 8. Если это так, добавьте --target i386-pc к приведенной выше команде. -

-
-
-
-

- 10.4.4. Создание файла - конфигурации GRUB -

-

- Создайте файл /boot/grub/grub.cfg: -

-
cat > /boot/grub/grub.cfg << "EOF"
-# Begin /boot/grub/grub.cfg
-set default=0
-set timeout=5
-
-insmod part_gpt
-insmod ext2
-set root=(hd0,2)
-
-menuentry "GNU/Linux, Linux 6.7.4-lfs-12.1" {
-        linux   /boot/vmlinuz-6.7.4-lfs-12.1 root=/dev/sda2 ro
-}
-EOF
-

- Команды insmod - загружают модули GRUB с именами - part_gpt и ext2. Несмотря на название, ext2 фактически поддерживаются файловые системы - ext2, ext3 и ext4. - Команда grub-install - встроила некоторые модули в основной образ GRUB (установленный в MBR или раздел GRUB - BIOS) для доступа к другим модулям (в /boot/grub/i386-pc), поэтому в стандартной - конфигурации эти два модуля уже встроены и эти две команды - insmod ничего не - будут делать. В любом случае, от них нет никакого вреда, но они - могут понадобиться в некоторых редких конфигурациях. -

-
- [Примечание] -

- Примечание -

-

- С точки зрения GRUB, файлы ядра - относятся к используемому разделу. Если вы используется отдельный - раздел /boot, удалите /boot из приведенной выше строки - linux. Вам также - потребуется изменить строку set - root так, чтобы она указывала на загрузочный раздел. -

-
-
- [Примечание] -

- Примечание -

-

- Наименование раздела для GRUB может измениться, если вы добавили - или удалили некоторые диски (это могут быть как съемные диски, - так и USB-устройства). Изменение может привести к сбою загрузки, - потому что grub.cfg ссылается на - «старые» - указатели. Чтобы не столкнуться с этой проблемой, необходимо - использовать UUID раздела и файловой системы вместо указателя - GRUB для указания устройства. Запустите команду lsblk -o - UUID,PARTUUID,PATH,MOUNTPOINT, чтобы посмотреть - UUID ваших файловых систем (в столбце UUID) и разделов (в столбце PARTUUID). Затем замените set root=(hdx,y) на search - --set=root --fs-uuid <UUID - файловой системы, в которой установлено - ядро>, и замените root=/dev/sda2 на root=PARTUUID=<UUID - раздела, в котором собрана LFS>. -

-

- Обратите внимание, что UUID раздела и UUID файловой системы на - этом разделе это совершенно разные вещи. Некоторые онлайн-ресурсы - могут предлагать вам использовать root=UUID=<UUID - файловой системы> вместо root=PARTUUID=<UUID - раздела>, но для этого требуется initramfs, - которая не рассматривается в LFS. -

-

- Имя узла устройства для раздела в /dev также может измениться (хотя это менее - вероятно, чем изменение указателя GRUB). Вы можете заменить пути - к узлам устройств, таким как /dev/sda1 на PARTUUID=<UUID - раздела>, в /etc/fstab, чтобы избежать потенциального сбоя - загрузки в случае, если имя узла устройства изменилось. -

-
-

- GRUB - чрезвычайно мощная программа, предоставляющая огромное - количество вариантов загрузки с самых разных устройств, работающих - систем и типов разделов. Существует также множество опций - настройки, таких как графические экраны-заставки, воспроизведение - звука, ввод с помощью мыши и т. д., детали этих опций выходят за - рамки этой инструкции. -

-
- [Внимание] -

- Внимание -

-

- Существует команда grub-mkconfig, которая может автоматически - записывать файл конфигурации. Она использует набор скриптов из - каталога /etc/grub.d/ и уничтожит любые сделанные вами настройки. - Эти скрипты предназначены в первую очередь для обычных - дистрибутивов и не рекомендуются для LFS. Если вы устанавливаете - коммерческий дистрибутив Linux, есть вероятность, что эта - программа будет запущена. Обязательно создайте резервную копию - файла grub.cfg. -

-
-
-
- - - -- cgit v1.2.3