Поговорим о ... (initrd - начальная инициализация)

Любые разговоры которые хоть как-то связаны с тематикой форума

Модератор: Модераторы разделов

Aleman
Сообщения: 109

Поговорим о ...

Сообщение Aleman »

Взял минимальный initrd который в Мандриве был. Распаковал.. начал изучать файл init
Все почти понятно.. тока остались маленькие вопросы..

после загрузки всех драйверов:

Код: Выделить всё

...
sleep 8
echo "Loading jbd.ko module"
insmod /lib/jbd.ko
echo "Loading ext3.ko module"
insmod /lib/ext3.ko

начинается всякие маунты.. вот тут и не понятки.

Код: Выделить всё

echo Mounting /proc filesystem
mount -t proc /proc /proc

Монтируем proc понятно, тока для чего?

Код: Выделить всё

echo Mounting sysfs
mount -t sysfs none /sys

Это тоже не понятно

Код: Выделить всё

echo Creating device files
mountdev size=32M,mode=0755
echo -n /sbin/hotplug > /proc/sys/kernel/hotplug
mkdir /dev/.udevdb
mkdevices /dev
echo Creating root device
mkrootdev /dev/root

Ну тут дело сдевайсам почти все ясно кроме Creating root device

Код: Выделить всё

resume
echo > /proc/suspend2/do_resume
echo Mounting root filesystem /dev/root
mount -o defaults --ro -t ext3 /dev/root /sysroot
echo Switching to new root
switchroot --movedev /sysroot
echo Initrd finished

сразу не понял про resume
далее я как понял моунтим уже настоящий раздел и пееключаемся в него.. вроде так?

Дак вот как я раньше понимал что цель inird загрузить дрова нашей фс и дать продолжить дальше ядру делать свое дело...
Но вижу тут все круче закручено...
Если можно разясните мне пожалуйста эти пункты плиз...
И можно ли это сделать проще? Все ли там нужно?
Спасибо сказали:
Аватара пользователя
chitatel
Сообщения: 2095

Re: Поговорим о ...

Сообщение chitatel »

Aleman писал(а):
01.06.2008 16:17
тока остались маленькие вопросы..
Монтируем proc понятно, тока для чего?

man proc

Код: Выделить всё

echo Mounting sysfs
mount -t sysfs none /sys

Это тоже не понятно

http://ru.wikipedia.org/wiki/Sysfs
Спасибо сказали:
Aleman
Сообщения: 109

Re: Поговорим о ...

Сообщение Aleman »

sysfs:
Экспортирует в пространство пользователя информацию ядра Linux о присутствующих в системе устройствах и драйверах.


А /dev тогда для чего?
Спасибо сказали:
Аватара пользователя
skeletor
Сообщения: 1224

Re: Поговорим о ...

Сообщение skeletor »

А это для того, что бы вы могли обратится к устройству. А то как вы смонтируете, например, привод или винт?
Спасибо сказали:
Aleman
Сообщения: 109

Re: Поговорим о ...

Сообщение Aleman »

Ну хорошо.. продолжу..
Сляпал я себе вот такой скрипт

Код: Выделить всё

#!/bin/nash
echo "ZAGRUZKA..."
echo "Loading ff-memless.ko module"
insmod /drv/ff-memless.ko
echo "load scsi"
echo "Loading scsi_mod.ko module"
insmod /drv/scsi_mod.ko
echo "Loading sd_mod.ko module"
insmod /drv/sd_mod.ko
sleep 5
echo "tstloadmbcache"
insmod /drv/mbcache.ko
echo "Loading jbd.ko module"
insmod /drv/jbd.ko
echo "Loading ext3.ko module"
insmod /drv/ext3.ko

echo Mounting /proc filesystem
mount -t proc /proc /proc
echo Mounting sysfs
mount -t sysfs none /sys
echo Creating device files
mountdev size=32M,mode=0755
#echo -n /sbin/hotplug > /proc/sys/kernel/hotplug
mkdir /dev/.udevdb

mkdevices /dev
echo Creating root device
mkrootdev /dev/root
resume
echo > /proc/suspend2/do_resume
echo Mounting root filesystem /dev/root
mount -o defaults --ro -t ext3 /dev/root /sysroot
echo Switching to new root
switchroot --movedev /sysroot
echo "GOTOVO!"


и вот такой результат:

что не так делаю?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Спасибо сказали:
Aleman
Сообщения: 109

Re: Поговорим о ...

Сообщение Aleman »

вижу на такую тему тут люди уже не пофлеймят...
Спасибо сказали:
Аватара пользователя
chitatel
Сообщения: 2095

Re: Поговорим о ...

Сообщение chitatel »

Aleman писал(а):
04.06.2008 13:20
вижу на такую тему тут люди уже не пофлеймят...

Уважаемый Aleman, я, например, не очень понимаю, чего Вы собственно хотите?

1. Изучить initrd? N-ное время назад читал какую-то статью об устройстве (и потрошении) initrd, весьма обстоятельную, на мой взгляд. Как будто с тех пор её перевели на русский(?).. Адреса статьи не помню, но у Костромина наверняка можно найти.

2. Избавиться от него?
И можно ли это сделать проще? Все ли там нужно?

Можно загружать систему вообще без initrd.
Спасибо сказали:
Aleman
Сообщения: 109

Re: Поговорим о ...

Сообщение Aleman »

chitatel писал(а):
04.06.2008 13:38
Уважаемый Aleman, я, например, не очень понимаю, чего Вы собственно хотите?

да хотел бы понять некоторые моменты... но не буду вас мучить сам разобрался уже потихоньку.
Сейчас просто хочу найти причину почему не работает моя сборка initrd. в чем ошибка.
Спасибо сказали: