GNU/Linux >> Znalost Linux >  >> Linux

Žádné /proc ve vestavěné distribuci Linuxu založené na Busybox

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/cmdline jaké parametry vaše jádro obdrží při bootování. Pokud obsahuje init=... možná jej budete muset změnit např. /sbin/init nebo 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í.


Linux
  1. Jak získám cestu k procesu v Unixu / Linuxu

  2. /proc/[pid]/pagemaps a /proc/[pid]/maps | linux

  3. Kdy mám použít /dev/shm/ a kdy /tmp/?

  1. Prozkoumání souborového systému Linux /proc

  2. mount dev, proc, sys v prostředí chroot?

  3. Jak zjistit, ze které složky běží proces?

  1. Linux:Rozdíl mezi /dev/console, /dev/tty a /dev/tty0?

  2. Linux – propojení /proc/mnt s /proc/mounts?

  3. Linux – Jak otestovat, zda je blokové zařízení pouze pro čtení z /sys nebo /proc?