LINUX.ORG.RU

[kernel] strip или не strip


0

0

Меня мучает жадность. Собрал модули для ядра 2.6.33.3. Мама родная, 74M not stripped бинарников. Очень хочется натравить strip на всё это дело, но вот терзаюсь вопросом можно ли такое с ядром и если можно то как правильно?

★★★★★

там есть настройки в конфиге на strip, вручную наверное не стоило бы это делать )

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

Почему нет, думаю что

strip -R .comment -R .note vmlinuz
будет вполне безопасно

fluorite ★★★★★ ()

Ужас, куда столько?

//счастливый обладатель 2 мегабайтного монолитного ядра

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

не vmlinuz, а vmlinux , который затем надо сжать и добавить код распаковщика

CONFIG_STRIP << вот это я не знаю что делает, надо поискать в справке

CONFIG_STRIP_ASM_SYMS << а вот это strip asm symbols not needed for relocations , т.е. как раз то что нужно

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

А любителям make menuconfig в какую сторону копать?

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

Когда я был молодым крокодилом я всегда собирал ядро строго под компьютер. Потом однажды компьютер сдох (ну скажем так это я сжёг процессор и сокет) и пришлось переехать на другой. С тех пор я не выключаю ненужные драйвера.

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

Нашёл. Хм... CONFIG_STRIP_ASM_SYMS у Патрика по умолчанию включен. То есть не помогает. Может быть нужен некий make strip?

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

такой цели нет,
а вообще модули .ko наверное можно стрипнуть с --strip-unneeded

не хотите проверить экспериментом ?)

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

/lib/modules/2.6.33.3-lu :#du -sh
59M   .
/lib/modules/2.6.33.3-lu :#find . -name *.ko | xargs strip --strip-unneeded
/lib/modules/2.6.33.3-lu :#depmod -a
/lib/modules/2.6.33.3-lu :#du -sh
55M   .

Sylvia ★★★★★ ()
Ответ на: комментарий от Sylvia
# find . | xargs file | grep ELF| cut -f 1 -d :| xargs strip --strip-unneeded
# du -sh
68M     .

На 6M стало меньше, но при этом случайно взятые модули говорят что они not stripped. Грузиться с этого пожалуй не стану.

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

> find . -name *.ko | xargs strip --strip-unneeded

И откуда такая любовь к xargs и пайпам? :-)

find . -name *.ko -exec strip --strip-unneeded {} \;

Cancellor ★★★★☆ ()
Ответ на: комментарий от KblCb

у меня тоже пишет что unstripped, хотя файлы стали меньше

Sylvia ★★★★★ ()

1)Что только люди не придумают, лишь бы оптимальный конфиг не сделать
2)Хлебом не корми - дай лишних и ненужных модулей скомпилить а потом думать стрипать их или нет

kraulfz ()

>Меня мучает жадность
Если бы вас мучила жадность, то модулей было бы на 2М а не на 74

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

Это всё заветы Патрика. Ну и параллелизм.

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

> И откуда такая любовь к xargs и пайпам? :-)

Позволяет не забивать себе голову фигурными скобочками и прочими забавными символами, а также уровнем их экранирования.

dm1024 ★★★ ()

Скажу по секрету, все .ko можно ещё заgzipовать, так как modprobe и иже с ней прекрасно понимают пожатые модули.

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

хм
CONFIG_STRIP_ASM_SYMS=n
-rw-r--r-- 1 root root 2262208 Май 6 12:08 bzImage
CONFIG_STRIP_ASM_SYMS=y
-rw-r--r-- 1 root root 2262560 Май 6 11:58 bzImage
WTF?

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

CONFIG_STRIP_ASM_SYMS=n
/lib/modules/2.6.33-gentoo-r1 $ du -s
14048   .
CONFIG_STRIP_ASM_SYMS=y
/lib/modules/2.6.33-gentoo-r1 $ du -s
14048
WTF?

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

а вот
localhost 2.6.33-gentoo-r1 # find . -name *.ko | xargs strip --strip-unneeded
megabaks@localhost /lib/modules/2.6.33-gentoo-r1 $ du -s
13420 :)

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

только скрипты инициализации могут непонимать ) в генте скрипты загрузки модулей ALSA затупили, пришлось те , что в sound распаковать

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