Неожиданной находкой стала книга Hands-on Booting за авторством… — Остальные 90% — TG.ME

Неожиданной находкой стала книга Hands-on Booting за авторством Yogesh Babar, ведущего инженера поддержки в Red Hat. Признаться, я и не думал, что в процесс загрузки ОС можно так глубоко вмешиваться и, что интереснее, необходимость что-то подкрутить действительно возникает.

Приятная особенность книги, которая сразу же бросилась в глаза - автор рассказывает как о старом способе загрузки систем, использующих BIOS, так новом, для систем с поддержкой UEFI. Ранее ни в одной из книг я не встречал описания последнего способа, авторы почему-то увиливали от его описания, хотя работа с UEFI на первый взгляд стала только проще.

Помимо описания нормального процесса загрузки автор не забыл привести примеры частых проблем, возникающих при запуске, объяснить причины их возникновения и дать рекомендации по их устранению. Рецепты вышли не слишком универсальными: автор фокусируется на дистрибутивах на основе Fedora, а этапы загрузки, выполняющиеся после загрузки ядра в память, уже могут отличаться в дистрибутивах. Так, например, Debian и Ubuntu 24 используют пакет initramfs-tools для управления образом загрузочного диска, а Fedora - dracut. Эти системы используют разные скрипты, имеют различную архитектуру, по-разному вовлекают systemd и используют разные команды, и всё-таки изучение любой из этих систем не будет лишним - понять вторую с имеющимся багажом знаний будет куда легче. Да и вообще, в Ubuntu 25 обещают поддержать dracut - лишний стимул начать знакомиться с ним раньше :)

Не изменяя себе, издательство Apress стабильно допускает немалое количество воды в текст. Зачем-то целая глава посвящена установке сотни операционных систем на один жёсткий диск, и приведён полный многостраничный список используемых ОС. Пример вышел бы таким же наглядным, остановись автор на 10 разделах, но зачем-то главу растянули. Полезных страниц в книге всё-таки немного меньше заявленных четырёх сотен.

Как обычно, оставлю несколько самых интересных заметок из книги.

1. UEFI - спецификация, разработанная для современных систем, не стеснённых в ресурсах. Наконец она позволяет не разбивать загрузчик на много частей, а использовать единый исполняемый файл.

2. Помимо загрузчика и EFI shell UEFI позволяет запускать и другие приложения. В принципе, UEFI можно расценивать как небольшую ОС.

3. Возможно, в будущем расположение файлов загрузчиков будет описываться стандартом BLS, но на данный момент стандарт распространения не получил.

4. vmlinuz - bzip-сжатый файл vmlinux c добавленным в начало архива кодом его распаковки.

5. initramfs - опционально сжатый cpio архив с файлами.

6. initramfs должен содержать все .ko -файлы, необходимые для монтирования реальной файловой системы.

7. По умолчанию в окружении initramfs монтируются только корень ФС и директория /usr. Чтобы примонтировать дополнительную директорию (например, /var для сохранения логов загрузки) добавьте её в файл fstab с опцией x-mount.target.

8. systemctl reload-daemon также запускает systemd-генераторы.
www.opennet.ru
initramfs-tools
>> initramfs-tools (8)
❤9👍6🔥6
June 18, 2025 704 7 14