Apress Source Code
This repository accompanies Hands-on Booting by Yogesh Babar (Apress, 2020).
Download the files as a zip using the green button, or clone the repository to your machine using Git.
Releases
Release v1.0 corresponds to the code in the published book, without corrections or updates.
Contributions
See the file Contributing.md for more information on how you can contribute to this repository.
- Collections
-
Magazines
-
Kids
-
Business Library
-
Available Now
-
Awards & Best Of
-
Sponsored Collections
-
Teens
-
Chinese
-
Malay
-
Tamil
-
Language
- English
- 中文(简体)
- 中文(繁體)
- Bahasa Melayu
- தமிழ்
-
Description
-
Details
Master the booting procedure of various operating systems with in-depth analysis of bootloaders and firmware. The primary focus is on the Linux booting procedure along with other popular operating systems such as Windows and Unix.
Hands-on Booting begins by explaining what a bootloader is, starting with the Linux bootloader followed by bootloaders for Windows and Unix systems. Next, you’ll address the BIOS and UEFI firmware by installing multiple operating systems on one machine and booting them through the Linux bootloader. Further, you’ll see the kernel’s role in the booting procedure of the operating system and the dependency between kernel, initramfs, and dracut. You’ll also cover systemd, examining its structure and how it mounts the user root filesystem. In the final section, the book explains troubleshooting methodologies such as debugging shells followed by live images and rescue mode.
On completing this book, you will understand the booting process of major operating systems such as Linux, Windows, and Unix. You will also know how to fix the Linux booting issues through various boot modes.
What You Will Learn
Who This Book Is For
Linux users, administrators, and developers.
Publisher:
Apress
OverDrive Read
- ISBN: 9781484258903
- Release date: June 30, 2020
EPUB ebook
- ISBN: 9781484258903
- File size: 27173 KB
- Release date: June 30, 2020
Master the booting procedure of various operating systems with in-depth analysis of bootloaders and firmware. The primary focus is on the Linux booting procedure along with other popular operating systems such as Windows and Unix.
Hands-on Booting begins by explaining what a bootloader is, starting with the Linux bootloader followed by bootloaders for Windows and Unix systems. Next, you’ll address the BIOS and UEFI firmware by installing multiple operating systems on one machine and booting them through the Linux bootloader. Further, you’ll see the kernel’s role in the booting procedure of the operating system and the dependency between kernel, initramfs, and dracut. You’ll also cover systemd, examining its structure and how it mounts the user root filesystem. In the final section, the book explains troubleshooting methodologies such as debugging shells followed by live images and rescue mode.
On completing this book, you will understand the booting process of major operating systems such as Linux, Windows, and Unix. You will also know how to fix the Linux booting issues through various boot modes.
What You Will Learn
Who This Book Is For
Linux users, administrators, and developers.
-
Details
Publisher:
Apress
OverDrive Read
ISBN: 9781484258903
Release date: June 30, 2020
EPUB ebook
ISBN: 9781484258903
File size: 27173 KB
Release date: June 30, 2020
-
Creators
-
Formats
OverDrive Read
EPUB ebook
-
Languages
Book description
Master the booting procedure of various operating systems with in-depth analysis of bootloaders and firmware. The primary focus is on the Linux booting procedure along with other popular operating systems such as Windows and Unix.
Hands-on Booting begins by explaining what a bootloader is, starting with the Linux bootloader followed by bootloaders for Windows and Unix systems. Next, you’ll address the BIOS and UEFI firmware by installing multiple operating systems on one machine and booting them through the Linux bootloader. Further, you’ll see the kernel’s role in the booting procedure of the operating system and the dependency between kernel, initramfs, and dracut. You’ll also cover systemd, examining its structure and how it mounts the user root filesystem. In the final section, the book explains troubleshooting methodologies such as debugging shells followed by live images and rescue mode.
On completing this book, you will understand the booting process of major operating systems such as Linux, Windows, and Unix. You will also know how to fix the Linux booting issues through various boot modes.
What You Will Learn
- Examine the BIOS and UEFI firmware
- Understanding the Linux boot loader (GRUB)
- Work with initramfs, dracut, and systemd
- Fix can’t-boot issues on Linux
Who This Book Is For
Linux users, administrators, and developers.
Доставка в
город Москва
: 9 ноября
Основные характеристики
Товар из США
Доставим в Ваш город
Артикул:313158129466
Продавец:
bargainbookstores
(1072710)
Местонахождение:Grand Rapids, Michigan, US
Доставка до склада США
Бесплатно
Товары из магазинов
США и Европы
без наценок!
Отправили
67 000 посылок
с 2008 года!
Знаменитый
каталог eBay
на русском языке!
Доставка курьером
до двери
Почтой или в удобный пункт выдачи!
Похожие товары
Наши видеообзоры
Hands-On Booting: Learn the Boot Process of Linux, Windows, and Unix (Paperback
Hands-On Booting: Learn the Boot Process of Linux, Windows, and Unix (Paperback – можно купить на shopozz.ru с доставкой
из Grand Rapids, Michigan, US. Все товары из
категории «Высшее образование и образование для взрослых» быстро и вовремя доставляются в Россию и страны СНГ.
Полную информацию о доставке можно посмотреть в разделе «Доставка».
На товары категории «Высшее образование и образование для взрослых» действует доступная цена,
поэтому Hands-On Booting: Learn the Boot Process of Linux, Windows, and Unix (Paperback можно
приобрести всего за
6255 руб.
Не можете сделать выбор? Посмотрите другие товары продавца
bargainbookstores
(1072710)
–
«Смотреть все товары».
Возникли вопросы о товаре, условиях оплаты либо доставки?
Закажи обратный
звонок!
Другие бренды категории
Покупки в США и Европе — это просто
Вы делаете заказ — мы выкупаем товары и доставляем вам
Склад
$46
Косметика M.A.C.maccosmetics.com
$46
Часы Timexamazon.com
$15
Джинсы levi’sebay.com
К вам домойОтправляем в Россию и
во все страны СНГ
Начать выгодные покупки в зарубежных интернет-магазинах
Время на прочтение
3 мин
Количество просмотров 11K
В этой статье описаны основные этапы загрузки операционной системы Linux. Эта тема которую неплохо бы было знать любому ИТ-специалисту.
Основные этапы загрузки хоста с ОС Linux:
-
BIOS/UEFI -> MBR/GPT
-
MBR/GPT -> Boot loader (GRUB2)
-
Boot loader (GRUB2) -> Инициализация ядра (Kernel)
-
Инициализация ядра (Kernel) -> Init (Systemd)
В этой статье описываются GRUB2 и Systemd, поскольку они являются основными для большинства основных дистрибутивов, но на практике еще можно найти другие.
BIOS
Первый шаг процесса загрузки не имеет ничего общего с Linux. Это аппаратная часть процесса загрузки, которая является одинаковой для любой операционной системы. При включении питания запускается BIOS (basic input/output system базовая система ввода-вывода), которая запускает POST (Power-On Self-Test — «самотестирование при включении»), который является частью BIOS. В случае сбоя BIOS POST, компьютер нельзя будет использовать, поэтому процесс загрузки не продолжится.
BIOS POST проверяет базовую работоспособность оборудования, а затем BIOS определяет местонахождение главных загрузочных записей (MBR) на всех подключенных загрузочных устройствах. Первый обнаруженный загрузочный сектор, содержащий действительную загрузочную запись, загружается в ОЗУ, а затем управление передается коду (GRUB2), который был загружен из загрузочного сектора.
GRUB2
В большинстве современных дистрибутивов используются загрузчик GRUB2 (можно также встретить GRUB и LILO). GRUB2 (GRand Unified Bootloader, version 2) — это программа, которая делает компьютер достаточно умным, чтобы найти ядро операционной системы (Kernel) и загрузить его в память.
GRUB2 позволяет загружать многие версии Linux и другие бесплатные операционные системы; он также может загружать по цепочке загрузочную запись проприетарных операционных систем. А также, может позволить пользователю выбрать загрузку из нескольких различных ядер для любого данного дистрибутива Linux. Это дает возможность загрузить предыдущую версию ядра, если обновленная версия даст сбой или будет несовместима с важной частью программного обеспечения. GRUB2 можно настроить с помощью файла /boot/grub/grub.conf.
Функция GRUB2 состоит в том, чтобы найти и загрузить ядро Linux в оперативную память и передать управление компьютером ядру. Ядро и связанные с ним файлы находятся в каталоге /boot. Файлы ядра можно идентифицировать, так как все они имеют имена, начинающиеся с vmlinuz. Вы можете посмотреть содержимое каталога /boot, чтобы увидеть установленные в настоящее время ядра в вашей системе. По умолчанию GRUB2 предоставляет предзагрузочное меню установленных ядер, включая опцию rescue и, если настроено, опцию recovery.
GRUB2 загружает выбранное ядро в память и передает управление компьютером ядру.
Kernel (ядро)
Все ядра находятся в каталоге /boot, в самораспаковывающемся сжатом формате для экономии места на диске. После того, как выбранное ядро загружено в память и начинает выполняться, оно сначала извлекает себя из сжатой версии файла, прежде чем сможет выполнять какую-либо полезную работу.
Так как файловые системы еще не смонтированы, ядро при запуске использует временную файловую систему из файла initrd.img, для того чтобы загрузиться полностью. После извлечения оно загружает инициализацию операционной системы — Systemd (PID 1) и передает ей управление.
Systemd
Systemd является основным родителем для всех процессов, имеет первый номер процесса (PID 1) и отвечает за доведение хоста Linux до состояния, в котором можно выполнять работу.
Systemd монтирует файловые системы, как определено в файле /etc/fstab, включая любые файлы подкачки или разделы. На этом этапе он уже может получить доступ к файлам конфигурации, расположенным в /etc, включая свои конфигурационные файлы. Он использует свой файл конфигурации, чтобы определить, в каком состоянии должен загрузить хост.
Загрузка linux с UEFI
Новые компьютеры используют UEFI (Unified Extensible Firmware Interface) вместо BIOS. UEFI содержит множество преимуществ перед BIOS, одна из которых — поддержка GPT, который позволяет использовать большие диски и помещать загрузчик на специальный раздел, а также позволяет создавать много разделов.
Раньше диски разбивались на разделы с помощью MBR, но было ограничение — диск не мог быть больше 2 TB, а разделов не могло быть больше четырёх. При этом таблица разделов и первичный загрузчик помещались на первый сектор диска в MBR. Диск разбитый с помощью GPT в первом секторе продолжает хранить MBR запись, для того, чтобы старые системы с BIOS могли использовать диски с таблицей разделов GPT.
UEFI не использует загрузчик MBR, вместо этого используется загрузчик со специального раздела на диске, который отформатирован в FAT32 и называется ESP или EFI. Обычно это файл /efi/boot/bootx64.efi. Дальше процесс такой же как и загрузкой с помощью BIOS.