LINUX.ORG.RU

Сборка ядра и модули


0

1

Понадобилось собрать ядро для машинки отдельной. Собрал ядро, закинул bzImage в сектор boot создал запись загрузчика. И тут вспомнил что после ядра я компилил некие модули. Куда и как их ставить? Собираю систему на одном компе использовать буду на другом, соотвественно make modules-install не подходит. Откуда брать и куда копировать? спасибо. П.С Собираю первый раз, ногами не бить

Копировать в /lib/modules/`uname -r`

Как ты собираешь ядро с модулями для второй машины? Без чрута?

blackst0ne ★★★★★ ()
Ответ на: комментарий от Nortsx

Собираешь ядро хостовой системы? Т.е. открыл консоль и поехал: cd /usr/src/linux && make smth && make && make modules ... ?

Или создаёшь отдельное окружение, чрутишься туда и уже там всё собираешь? mkdir /tmp/new && mount ... & chroot ... ?

blackst0ne ★★★★★ ()
Ответ на: комментарий от Nortsx

Теперь другая пробелма - grub после первой загрузки ставит систему по дефолту причем в default/grub enabl deafult стоит в 0. Как это случается и как этого избежать?

Nortsx ()
Ответ на: комментарий от Nortsx

Все разрулил, но теперь беда - ставится голая система, с бизи боксом в качестве шелла. ЭТо от нехватки модулей?

Nortsx ()
Ответ на: комментарий от blackst0ne

В общем итоговый вопрос - ядро после сборки собрается в образ который лежит в arch/x86/, а где лежат модули этого ядра?

Nortsx ()
Ответ на: комментарий от Nortsx

модули обычно устанавливаются как make modules_install, надо как-то сказать чтобы при выполнении этой команды он тебе их положил куда-нить не в /lib набери make help и посмотри как это сделать.

gena2x ★★★ ()

Возможно ещё придётся не забыть запустить depmod -a

gena2x ★★★ ()

> соотвественно make modules-install не подходит

перенос папки /lib/modules/`uname -r` не канает?

x0r ★★★★★ ()

>Понадобилось собрать ядро

Зачем?

Led ★★★☆☆ ()

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

# cd linux-2.6.*.* // перейти в директорию с исходными кодами
# make menuconfig // настройки зависимостей и параметров сбокри
# make tar-pkg - компиляция ядра и модулей и запаковка их в tar архив

После последней команды начнётся компиляция ядра и модулей и в конце создастся архив с именем linux-2.6.*.tar, его нужно будет распаковать в корень другой системы.

tar -xpf linux-2.6.*.tar -C <метка монтирования новой системы>

kostik87 ★★★★★ ()
Ответ на: комментарий от Nortsx

Если будете собирать ядро заново этим способом, то не забудьте скопировать конфигурационный файл ядро ".config" куда-либо и выполнить очистку исходных кодов, иначе у вас будут проблемы.

# cd linux-2.6.*.* // перейти в директорию с исходными кодами
# mv .config ../
# make clean
# mv ../.config ./
# make menuconfig // настройка зависимостей и параметров сбокри
# make tar-pkg - компиляция ядра и модулей и запаковка их в tar архив

kostik87 ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.