Eu usaria um initramfs. ( link )
Muitas distribuições Linux usam um initramfs (não confundir com um initrd, elas são diferentes) durante o processo de inicialização, principalmente para poder iniciar programas do espaço do usuário muito cedo no processo de inicialização. No entanto, você pode usá-lo para o que quiser.
O benefício de um initramfs sobre um initrd é que um initramfs usa um sistema de arquivos tmpfs enquanto um initrd usa um dispositivo de bloco de memória RAM. A principal diferença aqui é que, para um initrd, você deve pré-alocar todo o espaço para o sistema de arquivos, mesmo se não for usar todo esse espaço. Então, se você não usa o espaço do sistema de arquivos, você desperdiça memória RAM, o que, em um dispositivo incorporado, geralmente é um recurso escasso. Tmpfs é um sistema de arquivos que fica sem memória RAM, mas usa apenas o mesmo valor que o usado atualmente no sistema de arquivos. Então, se você excluir um arquivo de um tmpfs, esse RAM será liberado imediatamente.
Agora, normalmente, um initramfs é temporário, usado apenas para executar alguns programas extremamente cedo no processo de inicialização. Depois que esses programas são executados, o controle é direcionado para o sistema de arquivos real em execução em um disco físico. No entanto, você não precisa fazer isso. Não há nada que o impeça de ficar sem o initramfs indefinidamente.