Инструменты для создания собственного дистрибутива Linux

Tools Create Your Own Linux Distribution



Если вам нужно создать дистрибутив Linux, это руководство прояснит важные вопросы, а также даст быстрое представление о процессах создания. Эта статья посвящена Linux From Scratch и Ubuntu Live как способам настройки дистрибутива Linux. Показанные шаги и команды предназначены не для работы, а для отображения уровня сложности каждого процесса. В будущем каждый процесс будет объяснен в новых обновлениях на LinuxHint.

LFS (Linux From Scratch) - самый популярный инструмент для создания настраиваемых дистрибутивов Linux из исходного кода. Создание собственного дистрибутива Linux может иметь некоторые преимущества (и недостатки). Среди преимуществ вы узнаете много нового о Linux, создав свой собственный дистрибутив Linux. Вы узнаете, как взаимодействуют модули Linux и как настраивать систему.







Операционный размер также является преимуществом в зависимости от ваших аппаратных ресурсов или использования, которое вы хотите дать системе. На своем сайте разработчики LFS рассказывают, что создали веб-сервер для работы с Apache размером 5 мб. Вместе с Gentoo Linux, Linux From Scratch является наиболее гибким способом настройки системы Linux. Сборка довольно проста, и процесс описывается шаг за шагом, ниже я покажу только начальные шаги, чтобы изобразить представление о сложности и ссылку на официальную документацию, показанную на этапе сборки.



Чтобы начать работу с Linux с нуля, вам необходимо сначала создать раздел (минимум 3 ГБ из-за процесса компиляции), также рекомендуется создать раздел подкачки или поделиться существующим (инструкции по разбиению на разделы см. В разделе Разбиение жестких дисков в Debian / Ubuntu и изменение размера разделов).



После создания раздела создайте переменную $ LFS, запустив:





#экспорт LFSзнак равно/мнт/lfs

Вы можете проверить это, запустив:



#выбросил $ LFS

Затем смонтируйте раздел:

# mkdir -pv $ LFS
# монтировать -v -t ext3 / dev / $ LFS

Примечание: заменить на свой раздел .

Затем запустите для раздела подкачки:

#/sbin/обменять-v /разработчик/<поменять местами>

Вам нужно будет загрузить пакеты в определенный каталог под названием LFS / sources, чтобы создать каталог run:

#mkdir -v $ LFS/источники

Сделайте его доступным для записи и липким:

#chmod -vа + вес$ LFS/источники

Загрузите и сохраните в каталоге все пакеты из http://www.linuxfromscratch.org/lfs/view/6.6/chapter03/packages.html

а также

http://www.linuxfromscratch.org/lfs/view/6.6/chapter03/patches.html

Вы можете использовать список wget http://www.linuxfromscratch.org/lfs/view/6.6/wget-list

Создайте каталог инструментов и символическую ссылку, запустив:

# mkdir -v $ LFS / инструменты
# ln -sv $ LFS / tools /

Выполните следующие команды, чтобы создать пользователя lfs, дающего ему права на инструменты а также источники каталоги:

# groupadd lfs
# useradd -s / bin / bash -g lfs -m -k / dev / null lfs
# passwd lfs
# chown -v lfs $ LFS / инструменты
# chown -v lfs $ LFS / источники
# su - lfs

Войдите в систему как пользователь lfs и запустите:

#Кот >~/.bash_profile<< 'EOF'

Затем введите:

#exec env ДОМзнак равно$ HOME СРОКзнак равно$ TERM PS1знак равно' и: ш $' /являюсь/трепать

И запускаем:

#EOF

Создать новый .bashrc запустив:

#Кот >~/.bashrc<< 'EOF'

И добавить:

# set + h
# umask 022
# LFS = / mnt / lfs
# LC_ALL = POSIX
# LFS_TGT = $ (uname -m) -lfs-linux-gnu
# ПУТЬ = / tools / bin: / bin: / usr / bin
# экспорт LFS LC_ALL LFS_TGT PATH

# EOF

Затем запустите:

# источник ~ / .bash_profile
# установить MAKEFLAGS = '- j 2'

Затем вы можете сохранить инструменты, чтобы начать сборку вашего дистрибутива Linux, следуя инструкциям на http://www.linuxfromscratch.org/lfs/view/6.6/chapter05/introduction.html

После завершения измените владельца каталога инструментов, запустив:

#Chown корень: корень$ LFS/инструменты

Официальную документацию по сборке вашего дистрибутива, подготовке ядра и базового программного обеспечения можно найти здесь . Это последовательность шагов, необходимых для создания настраиваемого дистрибутива. Шаги для подготовки файловых систем виртуального ядра , Управление пакетами , Вход в среду Chroot , Создание каталогов , Создание важных файлов и символической ссылки s, установка дополнительного программного обеспечения в списке здесь Снова зачистки а также Убираться .

Чтобы начать настройку системы, посетите разделы:

Наконец установите GRUB Использование GRUB для настройки процесса загрузки и следуйте шаги перед перезагрузкой в ​​первый раз

Ubuntu Live


Создать настраиваемый Linux на основе Ubuntu довольно просто, это можно сделать очень быстро, это чрезвычайно просто по сравнению с Linux From Scratch, но совсем не гибко, вы сможете добавлять программное обеспечение, настраивать фон и некоторые детали но основные настройки, такие как редакция меню приложений, не поддерживаются.

#судоdebootstrap

И добавить:

--арх= amd64
--вариант= minbase
бионический
$ HOME/live-ubuntu-с нуля/chroot

http://us.archive.ubuntu.com/ubuntu/

Установите точки монтирования:

# sudo mount --bind / dev $ HOME / live-ubuntu-с нуля / chroot / dev
# sudo mount --bind / run $ HOME / live-ubuntu-from-scratch / chroot / run
# sudo chroot $ HOME / live-ubuntu-с нуля / chroot
# монтировать none -t proc / proc
# монтировать none -t sysfs / sys
# монтировать none -t devpts / dev / pts
# экспорт HOME = / root
# экспорт LC_ALL = C
# echo 'ubuntu-fs-live'> / etc / hostname

Затем вам нужно будет обновить репозитории и запустить apt update и следующую команду:

# apt-get install -y systemd-sysv
# dbus-uuidgen> / etc / id-машины
# ln -fs / etc / идентификатор-машины / var / lib / dbus / идентификатор-машины
# dpkg-divert --local --rename --add / sbin / initctl
# ln -s / bin / true / sbin / initctl
# apt-get install -y ubuntu-standard casper lupine-casper обнаружение ноутбука-обнаружение os-prober network-manager resolvconf net-tools wireless-tools локали wpagui linux-generic

При запросе экранов конфигурации, таких как нажатие GRUB ВХОДИТЬ к вариантам по умолчанию, чтобы продолжить. Затем запустите:

#apt-get install-y ubiquity ubiquity-casper ubiquity-frontend-gtk ubiquity-slideshow-ubuntu ubiquity-ubuntu-artwork

Установите любой оконный менеджер X, который вы хотите:

#apt-get install-y plymouth-theme-ubuntu-logo ubuntu-gnome-desktop ubuntu-gnome-wallpapers

Добавьте любое дополнительное программное обеспечение, которое вы хотите в свой дистрибутив, а затем запустите:

# apt-get update
# apt-get install -y код

Выберите свои локали и перенастройте файл resolv.conf и сетевой менеджер:

# dpkg-reconfigure locales
# dpkg-reconfigure resolv.conf
# dpkg-reconfigure network-manager

Затем запустите:

# truncate -s 0 / etc / id-машины
# rm / sbin / initctl
# apt-get clean
# rm -rf / tmp / * ~ / .bash_history

Размонтируйте все файловые системы:

# umount / proc
# umount / sys
# umount / dev / pts
# экспорт HISTSIZE = 0exit
# sudo umount $ HOME / live-ubuntu-с нуля / chroot / dev
# sudo umount $ HOME / live-ubuntu-с нуля / chroot / run

Создайте каталоги и скопируйте ядро ​​и двоичные файлы:

# cd $ HOME / live-ubuntu-с нуля
# mkdir -p image / {casper, isolinux, install}
# sudo cp chroot / boot / vmlinuz - ** - ** - общий образ / casper / vmlinuz
# sudo cp chroot / boot / initrd.img - ** - ** - общий образ / casper / initrd
# sudo cp chroot / boot / memtest86 + .bin изображение / install / memtest86 +
# wget --progress = dot https://www.memtest86.com/downloads/memtest86-usb.zip -O image / install / memtest86-usb.zipunzip -p image / install / memtest86-usb.zip memtest86-usb. img> изображение / установка / memtest86rm изображение / установка / memtest86-usb.zip

Настроить GRUB

Выполните все следующие команды:

# cd $ HOME / live-ubuntu-с нуля
# sudo mksquashfs изображение chroot / casper / filesystem.squashfs
# printf $ (sudo du -sx --block-size = 1 chroot | cut -f1)> image / casper / filesystem.size
# cd $ HOME / live-ubuntu-с нуля
# cd $ HOME / live-ubuntu-с нуля / изображение
# grub-mkstandalone --format = x86_64-efi --output = isolinux / bootx64.efi --locales = '' --fonts = '' 'boot / grub / grub.cfg = isolinux / grub.cfg'
# grub-mkstandalone --format = i386-pc --output = isolinux / core.img --install-modules = 'linux16 linux normal iso9660 biosdisk search tar ls' --modules = 'linux16 linux normal iso9660 biosdisk search' - -locales = '' --fonts = '' 'boot / grub / grub.cfg = isolinux / grub.cfg'
# cat /usr/lib/grub/i386-pc/cdboot.img isolinux / core.img> isolinux / bios.img
# sudo / bin / bash -c '(find. -type f -print0 | xargs -0 md5sum | grep -v' ./md5sum.txt '> md5sum.txt)'
# sudo xorriso -as mkisofs -iso-level 3 -full-iso9660-filenames -volid '' -eltorito-boot boot / grub / bios.img -no-emul-boot -boot-load-size 4 -boot-info- таблица --eltorito-каталог загрузки / grub / boot.cat
--grub2-boot-info --grub2-mbr /usr/lib/grub/i386-pc/boot_hybrid.img -eltorito-alt-boot -e EFI / efiboot.img -no-emul-boot -append_partition 2 0xef isolinux /efiboot.img -output '../.iso' -graft-points '.' /boot/grub/bios.img=isolinux/bios.img /EFI/efiboot.img=isolinux/efiboot.img

Как видите, процесс с Ubuntu Live намного быстрее и проще, но это не более чем дистрибутив Ubuntu с небольшими настройками, в отличие от Linux From Scratch, который полностью настраивается. Я надеюсь, что вы нашли это руководство полезным, продолжайте следить за LinuxHint, чтобы получить дополнительные советы и обновления по Linux и сети.