You are not logged in.
Pages: 1
Сделал свое ядро по рецепту slitaz.
Как его теперь правильно упаковать?
bzImage - в linux-xxx.tazpkg, остальное в modules.tazpkg - и все, или особенности есть?
Чтоб можно было tazpkg -i, и в случае чего -r.
Offline
Здравствуй, Юрий.
Особых тонкостей нет, можно даже упаковать ядро с модулями в один пакет.
Есть такие моменты.
[*]Само ядро обычно лежит в папке [c]/boot[/c] и называется [c]vmlinuz-*.*.*-slitaz[/c], но может называться и [c]bzImage[/c] (без указания версии). Также они могут лежать оба, и для экономии места файл [c]bzImage[/c] может являться хардлинком на [c]vmlinuz-*.*.*-slitaz[/c]. Вообще, название файла ядра ничем не лимитировано, насколько я знаю.
[*]Самое важное, чтобы ядро загрузилось, нужно указать путь к нему в конфигурационном файле загрузчика ([c]/boot/grub/menu.lst[/c], [c]/boot/isolinux/isolinux.cfg[/c]). Можно держать несколько ядер и переключаться между ними во время загрузки.
[*]Модули ищутся по пути [c]/lib/modules/$(uname -r)[/c], где часть "$(uname -r)" может быть, к примеру, "3.2.71-slitaz": это так само ядро, которое загружено в данный момент, называет свою версию. Так как папка одна для каждой версии, не получится держать два разных набора модулей для двух разных ядер с одной и той же версией. Нужно будет что-нибудь поменять, например, назвать ядро "3.2.71-slitaz2" или как-нибудь еще.
[*]Если набор модулей рассчитан под своё конкретное железо, то такой набор обычно невелик, и при этом можно вообще отказаться от понятия модулей, вкомпилировав модули в состав ядра (выключив параметр [c]CONFIG_MODULES[/c] в конфиге ядра). Барри Каулер в состав ядра, было дело, не только модули вкомпилировал (не помню название, что-то экспериментальное), но и весь initrd.
Offline
Спасибо.
firmware можно просто перепаковать под новое ядро, правильно?
Offline
Firmware есть двух типов: то, которое идет в составе архива ядра и «внешнее». Не факт, что оно вообще нужно, но его да, можно перепаковать. Просто файлы из архива ядра переходят в архив пакета с firmware. Со «внешним» обычно какие-то свои заморочки…
Offline
В составе архива ядра - это в modules.
В папке /lib/firmware - это "внешнее", так?
Внешнее тоже нужно, пару пакетов... Например rt2x00 в modules есть, а 2870 - нет. И radeon R300 для mesa.
Offline
Всё firmware лежит в папке /lib/firmware.
Вот по этой ссылке, например, можно онлайн полазить по папке с firmware, которое идет в составе архива linux: ftp://cook.slitaz.org/linux/install/lib/firmware/
То, что я называю внешним, нужно добывать из других источников.
Мне для работы Wi-Fi понадобился файл, который лежит в папке [c]/lib/firmware/b43[/c]. Кажется, я получил его из пакета "get-wifi-firmware"...
Здесь можно поискать пакеты с firmware для SliTaz: http://pkgs.slitaz.org/?package=firmware
Не факт, что найдется и установится, но попробовать стоит. Да, существует пакет "firmware-radeon", может быть это то что нужно.
Offline
Ок. Спасибо.
А еще момент - в большинстве дистрибутивов, и в slitaz тоже, модули ядра сжаты и упакованы в отдельные пакеты. slitaz-скрипты для этого где прячутся, ткните, плиз.
Offline
make tazpkg
Offline
Pages: 1
[ Generated in 0.017 seconds, 7 queries executed - Memory usage: 1.54 MiB (Peak: 1.77 MiB) ]