LINUX.ORG.RU

История изменений

Исправление sparks, (текущая версия) :

С devfs оно и без udev нормально работает, ТС не догоняет логики, как и откуда должны браться диски

Если в кратце, ядру всегда нужна корневая файловая система, если ядро не смогло её подмонтировать в процессе загрузки, то Kernel Panic, для создания некой гибкости, чтобы не пересобирать ядро по любому чиху добавили механизм initrd/intitramfs (по сути одно и тоже), чтобы начать загрузку, загрузчик, в твоём случае grub, читает с диска ядро и initrd образ, ложит из по некоторому адрему в памяти, рядом кладёт опции для загрузки ядра и передает ему управление, дальше ядро, создаёт «виртуальный» корень, и запихивает туда содержимое initrd архивчика, и использует его для начальной инициализации, модтягивает там модуля, рейд массив там собирает, расшифровавает чтонить и пр хрень

Корень же нормальной твоей файловой систему монтируется в /sysroot, дальше chroot и /sbin/init, это запустит систему инициализации, в твоём случае System D, хотя можешь и заменить на чтонить, busybox сам по себе предоставляет функционал систему инициализации, ну и всё, дальше уже головняки прееходят на систему инициализации, она начинает монтировать остальные разделы, запускать сервисы и пр хрень

ах да, главное то и не написал, насчёт дисков и пр девайсов, есть 3 виртуальных файловых системы, devtmpfs, sysfs и procfs, они используеются как нетрудно догадаться в /dev - отображение «файлов» устройств, /sys - отображение дерева устройств и пр плюхи драйверов устройств в виде файлов ну и /proc там инфа по процессам в виде файликов, и как правило большинство тулов предполагают, что они уже нормально смонтированны, и они смогут дёрнуть инфу о систему из этих источников, по итогу в /dev’е у тебя будут видны доступные девайсы, для их «инициализиции» или донастройки или раздачи прав доступа нужен уже udev, ну и дальше больше

Исходная версия sparks, :

С devfs оно и без udev нормально работает, ТС не догоняет логики, как и откуда должны браться диски

Если в кратце, ядру всегда нужна корневая файловая система, если ядро не смогло её подмонтировать в процессе загрузки, то Kernel Panic, для создания некой гибкости, чтобы не пересобирать ядро по любому чиху добавили механизм initrd/intitramfs (по сути одно и тоже), чтобы начать загрузку, загрузчик, в твоём случае grub, читает с диска ядро и initrd образ, ложит из по некоторому адрему в памяти, рядом кладёт опции для загрузки ядра и передает ему управление, дальше ядро, создаёт «виртуальный» корень, и запихивает туда содержимое initrd архивчика, и использует его для начальной инициализации, модтягивает там модуля, рейд массив там собирает, расшифровавает чтонить и пр хрень

Корень же нормальной твоей файловой систему монтируется в /sysroot, дальше chroot и /sbin/init, это запустит систему инициализации, в твоём случае System D, хотя можешь и заменить на чтонить, busybox сам по себе предоставляет функционал систему инициализации, ну и всё, дальше уже головняки прееходят на систему инициализации, она начинает монтировать остальные разделы, запускать сервисы и пр хрень