sachy: Já měl na mysli default shell uvedený v /etc/passwd , ten se spouští vždy po zalogování. Na terminálech je jen logování, což jsou čisté shellovské věci, které se forknou do shellu nastaveného pro daného uživatele (po přihlášení).
jmp: Ano, shell není integrální součástí jádra. Nicméně rozšiřoval jsem toto tvrzení o to, že se bez něj i minimalistický systém neobejde. A jakmile už jednou nějaký je, tak nese celou ohromnou moc shellu + filosofie souborů (třeba /dev), což je samo o sobě strašlivě silné.
Shell je separátní proces, neb je třeba neuvěřitelné množství jeho instancí. Jak jsem řekl nejedná se o součást jádra, ale přirozenou bránu mezi jádrem a světem. Zajišťuje jak ochranu (proto separátní procesy, různé druhy shellu etc.), tak přístup (rozhraní). Samotný shell dle snad všech norem kopíruje normu POSIXu a prostě shellovsky obaluje Céčkovské funkce z POSIXu - což ho velmi úzce svazuje s jádrem.
Jinak procesy mají vlastníka (bez výjimky, včetně pid 1) a u těch kernelovských (init) je tím vlastníkem root. Čili to nebude tak jednoduché. Asi bys mohl spustit něco, co bys okousal o jakýkoliv shell, ale nic by to nepřineslo.
Bash sem vůbec netahej, ten opravdu s jádrem nemá nic společného
.
Jinak init jsem myslel proces 1, který tedy v Narvalovy mám. A jedná se o běžící jádro. V Linuxu prý jde zabít tento proces a hodí ti to normální
kernel panic , nezkoušel jsem to. Mimochodem v BSD to nejde (zkoušel jsem).
Ale tato diskuse je bezpředmětná, pokud se zde neobjeví někdo, kdo se v jádru vyzná, neb se jen díváme na zkreslený odraz a zkoumáme původce.