Po inicializaci a připojení kořenového systému souborů se Linux spustí /sbin/init který pokračuje s inicializacemi uživatelského prostoru včetně montáže /proc
S největší pravděpodobností vaše rcS nebo jakoukoli konfiguraci init reads to nedělá a musíte mu to říct.
Pokud máte výzvu shellu, můžete připojit /proc ručně pomocí:
mount -t proc p /proc
Všimněte si, že /proc adresář musí existovat, než tam můžete něco připojit. Měli byste jej zahrnout do svého kořenového obrazu.
2) je velmi pravděpodobné kvůli 1) - ps používá /proc získat informace o běžících procesech.
1) je buď proto, že se to neočekává od inicializace, nebo proto, že to neudělá. Zkontrolujte, jaká distribuce je předpokládaná to do on boot – jak se má systém spustit.
Věci, které můžete vyzkoušet:
-
mount
/proc, např.:mount -t proc proc /proc- druhý argument je libovolný (ukazuje se jako zdroj připojení). Zkontrolujte, co běží s PID=1 -
zkontrolujte
/proc/cmdlinejaké parametry vaše jádro obdrží při bootování. Pokud obsahujeinit=...možná jej budete muset změnit např./sbin/initnebo jej odstraňte, aby se jádro pokusilo vyřešit init, aby se spustilo samo. Musíte to udělat v konfiguraci bootloaderu (pro R-Pi je to v nějakém textovém souboru na SD kartě IIRC). -
Zkontrolujte, zda požadovaný init spustitelný soubor existuje - Busybox má obvykle spoustu symbolických odkazů směřujících na jeho binární soubor, takže lze použít
command [args]spíše nežbusybox command [args]. Možná vám chybí.