Cuando compilo mi propio núcleo, básicamente lo que hago es lo siguiente:
Descargo las fuentes de www.kernel.org y lo descomprimo.
Copio mi anterior
.config
a las fuentes y hago unmake menuconfig
seguimiento para ver las nuevas opciones y modificar la configuración de acuerdo con la nueva política del núcleo.Entonces, lo compilo:
make -j 4
Por último, lo instalo:
su -c 'make modules_install && make install'
.Después de algunas pruebas, elimino el núcleo antiguo (de
/boot
y/lib/modules
) y ejecuto completamente el nuevo (¡este último paso me salvó la vida varias veces! ¡Es un consejo profesional !).
El problema es que siempre obtengo uno /boot/initrd.img-4.x.x
que es enorme en comparación con los de mi distribución. Aquí el contenido de mi /boot/
directorio actual como ejemplo:
# ls -alFh
total 243M
drwxr-xr-x 5 root root 4.0K Mar 16 21:26 ./
drwxr-xr-x 25 root root 4.0K Feb 25 09:28 ../
-rw-r--r-- 1 root root 2.9M Mar 9 07:39 System.map-4.4.0-1-amd64
-rw-r--r-- 1 root root 3.1M Mar 11 22:30 System.map-4.4.5
-rw-r--r-- 1 root root 3.2M Mar 16 21:26 System.map-4.5.0
-rw-r--r-- 1 root root 170K Mar 9 07:39 config-4.4.0-1-amd64
-rw-r--r-- 1 root root 124K Mar 11 22:30 config-4.4.5
-rw-r--r-- 1 root root 126K Mar 16 21:26 config-4.5.0
drwxr-xr-x 5 root root 512 Jan 1 1970 efi/
drwxr-xr-x 5 root root 4.0K Mar 16 21:27 grub/
-rw-r--r-- 1 root root 19M Mar 10 22:01 initrd.img-4.4.0-1-amd64
-rw-r--r-- 1 root root 101M Mar 12 13:59 initrd.img-4.4.5
-rw-r--r-- 1 root root 103M Mar 16 21:26 initrd.img-4.5.0
drwx------ 2 root root 16K Apr 8 2014 lost+found/
-rw-r--r-- 1 root root 3.5M Mar 9 07:30 vmlinuz-4.4.0-1-amd64
-rw-r--r-- 1 root root 4.1M Mar 11 22:30 vmlinuz-4.4.5
-rw-r--r-- 1 root root 4.1M Mar 16 21:26 vmlinuz-4.5.0
Como habrás notado, el tamaño de mis initrd.img
archivos es aproximadamente 10 veces mayor que el de mi distribución.
Entonces, ¿hago algo mal al compilar mi kernel? Y, ¿cómo puedo reducir el tamaño de mi initrd.img
?