Estou executando o Linux 4.1 e inicializando em um ambiente simples de busybox. Os pacotes Busybox e shadow foram construídos como estáticos e instalados no meu rootFS. O Busybox é usado para o / sbin / init e o login do shadow é usado para o / bin / login. Eu usei o makedevs para criar o / dev e criei o / etc / {group, shadow, passwd, inittab, rc}.
Eu instalei isso na minha placa e ele inicializa e parece bem até que eu pressione Enter para entrar. Eu entendi que o arquivo / bin / login não foi encontrado. Adicionando ao meu script / etc / rc, eu posso ver que / bin / login existe e é executável. Então, por que o sistema não consegue encontrá-lo?
[ 3.875852] devtmpfs: mounted
[ 3.880023] Freeing unused kernel memory: 464K (c0994000 - c0a08000)
init started: BusyBox v1.26.2 (2018-08-16 15:09:07 EDT)
Got the init message
-rwxr-xr-x 1 0 0 43752 Nov 2 2018 /bin/login
Please press Enter to activate this console.
can't run '/bin/login': No such file or directory
Please press Enter to activate this console.
É assim que meu / etc / inittab se parece:
::sysinit:/etc/rc init
::askfirst:/bin/login
E meu script / etc / rc:
#!/bin/sh
export PATH=/usr/sbin:/usr/bin:/sbin:/bin
echo "Got the init message"
mount -n -t proc proc /proc 2>/dev/null
mount -n -t sysfs sysfs /sys 2>/dev/null
mount -o remount,rw,sync /
ls -l /bin/login
Tags busybox linux busybox-init