O initramfs é gerado automaticamente pelo processo de criação do kernel. Crie seu arquivo de especificação e defina a opção de kernel CONFIG_INITRAMFS_SOURCE=
para o local do seu arquivo. A criação do initramfs é explicada na documentação do kernel, leia ramfs-rootfs-initramfs.txt .
Also, do i need to generate an external file list for it to boot from initramfs properly?
Existem vários métodos para criar e usar um initramfs.
Finalmente, você pode eventualmente extrair o arquivo initramfs_data.cpio.gz
localizado no diretório usr
das origens do kernel, para verificar seu conteúdo. É mencionado na documentação.
Exemplo
prompt% mkdir -pv /usr/src/initramfs
prompt% nano /usr/src/initramfs/initramfs_list
prompt% cd /usr/src/linux
prompt% make menuconfig
# CONFIG_INITRAMFS_SOURCE=/usr/src/initramfs/initramfs_list
prompt% make && make modules_install
prompt% ls usr/
built-in.o gen_init_cpio initramfs_data.cpio.gz initramfs_data.o modules.builtin modules.order
prompt% mkdir -v /tmp/initramfs/
prompt% cp -v usr/initramfs_data.cpio.gz /tmp/initramfs
prompt% cd /tmp/initramfs/
prompt% cpio -i -d -H newc -F initramfs_data.cpio --no-absolute-filenames
prompt% ls
After rebuilding and rebooting, the message does not appear, and it's presumably not booting from initramfs.
Observe que um initramfs deve incluir um init válido.