наименьший возможный дистрибутив Linux

наименьший возможный дистрибутив Linux

Я хочу собрать действительно небольшой дистрибутив Linux, который будет использовать busybox, возможно, uClibc. Для начала подойдет только ramfs. Плюс, я не против отсутствия собственного набора инструментов. Я прошел через «linux с нуля», но, по-видимому, он предназначен для полнофункционального дистрибутива. Можете ли вы дать мне совет по этому поводу?

решение1

Я не могу сказать вам, какой наименьший возможный размер, ноКрошечное ядро ​​Linuxэто самое маленькое, о чем я когда-либо слышал. Они умудряются втиснуть графическую систему в 12 МБ, а текстовую — в 8 МБ.

решение2

На самом деле ограничений по размеру дистрибутива нет, за исключением функциональности, которая вам нужна.

Я рекомендую посмотретьlinuxfromscratch.orgесли вы заинтересованы в создании нового дистрибутива.

решение3

Не уверен, что такое «минимально возможная» минимальная конфигурация, но вы можете начать сinitramfs(см. такжедокументация ядра), содержащий всего несколько файлов.

Это помещает образ ramdisk в фактическое vmlinuxядро ​​перед сжатием всего, так что при загрузке он автоматически извлекается и распаковывается. Ядро запускается с использованием этого образа памяти в качестве корневой файловой системы и ищет там исполняемый файл с именем init. Который может бытьлюбойдвоичный - включая busybox.

На самом деле, использование статически связанного busybox initвнутри initramfs не является необычным шагом при запуске встроенного устройства — вызов командной строки сразу после загрузки ядра подтверждает, что ядро ​​загружается, интерфейс ядра/пользователя и консоль работают.

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

решение4

Ну вот,http://alpinelinux.org/ musl libc + busybox.

Это дистрибутив, который умещается менее чем в 8 МБ (хотя его можно немного уменьшить)

Он основан на musl-libc и busybox.

Связанный контент