Linux From Scratch, не вдаваясь в детали

в 10:24, , рубрики: linux, операционные системы, самообразование, метки: ,

Linux From Scratch, не вдаваясь в детали

LFS — это книга о том, как собрать работающую операционную систему GNU/Linux из исходных кодов. Конечно, лучше самому собрать систему по этой книжке. Но если тратить несколько дней своего времени жалко, а познакомиться все же охота — попробую рассказать.

На основе Linux From Scratch, Version 7.3, на английском языке.

Мне захотелось собрать LFS чтобы лучше понять устройство линукс, надеюсь вам тоже это интересно. Признаюсь, было еще одно желание — собрать эталонный, «ванильный» линукс. Увы, эталонный линукс существует только в воображении наивных айтишников.

Linux From Scratch, не вдаваясь в детали

Тем не менее по книжке LFS можно собрать замечательную действующую систему, а по BLFS (это следующая книжка), допилить её до полного соответствия Linux Standard Base. Это, кстати, сообщается в одной из первых глав.

Главы в основном короткие и лаконичные. Язык, простой и ясный. Читать такую книжку одно удовольствие.

Система собирается путем компиляции из исходных кодов всех необходимых программ — ядра, основной библиотеки C, компилятора, оболочки командной строки, и др. Все пакеты с исходными кодами приводятся в файле wget-list. Так что скачать их все очень просто. Также приводится файл md5sum — для проверки целостности файлов после скачивания.

Cначала нужно использовать какой-нибудь другой linux (можно live-cd). Используя его компилятор и другие инструменты, в нём производится сборка окружения необходимого для сборки (компилятор, линковщик). Результаты помещаются в /mnt/lfs/tools.

Потом, монтируются служебные файловые системы (/mnt/lfs/proc -> /proc, /mnt/lfs/dev -> /dev, и др.) и с помощью chroot сеанс пользователя переключается на использование /mnt/lfs как корневой файловой системы вашего нового линукса. А папка /tools дописывается в переменную окружения $PATH. Таким образом по мере сборки инструментов они будут подменять свои временные аналоги из /tools.

Linux From Scratch, не вдаваясь в детали

С помощью временной системы заново собираются все инструменты, но на этот раз они размещаются в /bin, /sbin, /lib. После чего устанавливаются скрипты загрузки из одного из скачанных пакетов.

Далее производится минимальная настройка системы (сеть, консоль, устройства). Создается файл /etc/fstab (настройка дисков), компилируется и устанавливается ядро (НАКОНЕЦ-ТО!), настраивается GRUB, и выполняется перезагрузка. Всё.

Стоит упомянуть, что в книжке довольно неплохо объясняются некоторые моменты. Например: что за файлы /etc/profile, ~/.bash_profile, ~/.bashrc и как они взаимодействуют. Или разъясняется как с помощью udev настроить чтобы двум сетевым картам всегда выдавались одни и те же имена eth0, eth1. Для каждого пакета приводится список всех входящих в него программ с кратким описанием каждой.

Автор: SamSol

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js