Apesar de que file
diz, afinal de contas, é um erro depurar símbolos. Um tópico sobre isso no LKML me levou a tentar:
make INSTALL_MOD_STRIP=1 modules_install
E baixo e eis que uma comparação de dentro do diretório /lib/modules/x.x.x
; antes:
> ls -hs kernel/crypto/anubis.ko
112K kernel/crypto/anubis.ko
E depois:
> ls -hs kernel/crypto/anubis.ko
16K kernel/crypto/anubis.ko
Mais do que isso, o tamanho total do diretório (usando o mesmo .config
) conforme relatado por du -h
passou de 185 MB para 13 MB.
Tenha em mente que além do uso de espaço em disco, isso não é tão significativo quanto parece. Os símbolos de depuração não são carregados durante o tempo de execução normal, portanto, o tamanho real de cada módulo na memória é provavelmente idêntico, independentemente do tamanho do arquivo .ko
. Eu acho que a única diferença significativa que fará será no tamanho do arquivo initramfs
, e a única diferença que fará será no tempo necessário para descompactar o fs. Ou seja, se você usar um initramfs descompactado , não importará.
strip --strip-all
também funciona e file
informa-os corretamente como stripped
de qualquer forma. Por que diz que not stripped
para a distro continua sendo um mistério.