Estoy diseñando un sistema operativo integrado Buildroot mínimo y personalizado para RPi0w. Mi iteración actual tarda mucho en iniciarse por completo: varios minutos con un teclado y un mouse conectados y decenas de minutos sin dispositivos de entrada. Se cuelga durante mucho tiempo y finalmente muestra el mensaje:
random: crng init done
Es un sistema integrado sin tarjeta de sonido ni dispositivos de entrada, por lo que supongo que el generador de números aleatorios carece de entropía: tiene que esperar mucho tiempo para obtener suficiente ruido antes de inicializarse.
Me gustaría instalarlo rng-tools
para proporcionar la entropía adicional requerida, pero no estoy seguro de cómo configurarlo en Buildroot.
Buscando a alguien que haya hecho esto antes en Buildroot que pueda ofrecer ayuda sobre qué archivos de configuración son necesarios, cómo/cuándo comenzar rngd
(estoy usando scripts simples /etc/init.d), qué módulos del kernel deben cargarse para usar el generador aleatorio incorporado de Raspberry Pi, etc.
Respuesta1
Simplemente seleccionar rng-tools
(en Paquetes de destino -> Manejo de hardware en la configuración del menú Buildroot) y ejecutar make
solucionó completamente el problema. Buildroot agregó automáticamente un S21rngd
archivo /etc/init.d/
. Mi sistema ahora se inicia en aproximadamente 4 segundos sin ningún dispositivo de entrada conectado.