LINUX.ORG.RU

Громадное ядро Slackware64-13.0


0

0

Доброго времени суток! Решил пересобрать ядро в очередной раз, однако всё оказалось не так просто. Дело в том, что ядро generic, поставляемое с дистрибутивом, имеет размер 2,6М. Собранное мною ядро той же версии с тем же конфигом, имеет размер около 14М, что для LiLo, например, является недостижимой высотой. Если кто знает, подскажите, пожалуйста, почему на платформе x86_64 получаются такие огромные ядра (знакомый на Arch Linux 64 работает с ядром 16M), и как получить ядро размером 2,6М, которое поставляется вместе с системой... Заранее благодарен.


Оно-то, небось, не особо и сжато bzip`ом?

Deleted
()

> uname --machine

x86_64

ls -lr /boot/ | grep vmlinuz-2.6.31

-rw-r--r-- 1 root root 2.5M Oct 16 01:50 vmlinuz-2.6.31-gentoo-r3.old

-rw-r--r-- 1 root root 2.5M Oct 17 02:24 vmlinuz-2.6.31-gentoo-r3

-rw-r--r-- 1 root root 3.6M Oct 11 16:18 vmlinuz-2.6.31-gentoo-r2

почему на платформе x86_64 получаются такие огромные ядра

А не надо все подряд тупо в ядро вкомпилировать и все будет хорошо

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

Глупый вопрос. А где ты забираешь это самое скомпилированное ядро? :D

vasily_pupkin ★★★★★
()

Различные debug и прочие отладочные опции отключены в конфиге?

TuxR ★★★★
()

в настройках ядра можно выбрать lzma сжатие ;) Еще надо все дебуг опции отрубить.

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

С системой поставляется ядро generic размером 2.6 метра. С ним также идёт его конфиг, config-generic, как и положено. В системе, также, есть исходники этого ядра. Я ничего не настраиваю, тупо собираю ядро с конфигом generic и получаю файл размером 14М! почему?

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

Смотрика чё написано на диске

/mnt/cdrom/kernels/compile_kern.sh

  cp $dir/config $TMP/linux-${KERNEL}/.config

  cd $TMP/linux-${KERNEL}

  make oldconfig ; make clean

  make $JOBS zImage
anonymous
()

> почему на платформе x86_64 получаются такие огромные ядра

x86_64 тут ни при чём:

-rw-r--r-- 1 root root 1736928 2009-10-16 15:07 /boot/vmlinuz-2.6.31-gentoo-r3

> знакомый на Arch Linux 64 работает с ядром 16M

Вот вы бедолаги :) Может, это vmlinux такого размера, а не пожатый образ? Но опять же, от архитектуры это не зависит.

const86 ★★★★★
()


сдается мне, что ты тарбол в котором и ядро и модули не инсталируешь в систему, а втыкаешь в /boot и пытаешься стартануть

AreS
()

-rw-r--r-- 1 root root 700K Окт 15 20:08 kernel26.img
-rw-r--r-- 1 root root 1,9M Окт 13 13:39 vmlinuz26

Архитектура x86_64, в ядре только необходимые фичи, вероятно полезные модулями.

feanor ★★★
()
~$ uname --machine
x86_64
~$ ll /boot/
-rw-r--r-- 1 root root 609K Окт 14 01:03 kernel26.img
-rw-r--r-- 1 root root 1,9M Окт 13 09:39 vmlinuz26

Ванильное ядро.

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

Я не скачиваю никакие тарболы с новыми ядрами. Slackware64-13.0 базируется на ядре 2.6.29.6, собраного в двух вариантах - huge(«огромное», практически всё жётко включёно в ядро, без модулей) и generic(на модульной основе).

# uname --machine
x86_64
# ls -lh /boot/vmlinuz-*
-rw-r--r-- 1 root root 2,6M 2009-08-17 11:48 /boot/vmlinuz-generic-2.6.29.6
-rw-r--r-- 1 root root 4,8M 2009-08-17 20:59 /boot/vmlinuz-huge-2.6.29.6
Если взять исходники ядра из /usr/src/linux и собрать их с конфигом generic:
# cd /usr/src/linux
# make mrproper
# cp /boot/config-generic-2.6.29.6 ./.config
# make
Тогда получится ядро размером около 14М.

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

Насколько я помню generic - для работы с initrd. Huge - обычное.

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