Okey, mozno teraz znovu trepnem blbost. Ale, ulohou sysvint-u (myslim toho "stareho" initu) je spustat init script, napr. /etc/init.d/networking. Systemd by potom podla vsetkeho mal pre zmenu spustat tie tzv. Unit file napr. networking.service.
Ak by kernel hladal, to co je mu predano v boot parametru init, init=/bin/sh, tak by init=/bin/sh musel byt spraveny tak, aby spustal jednolive init scpriti ci unit file...? Ci si pletiem dojmi a pojmi...?
Jenom přibližně (ale dost blízko
) - když se spustí init systém (sysv, systemd), tak ten program=init nějakým způsobem připraví ten počítač do určitého stavu (sysv spouští skripty, systemd podle unitů). Když se jádru předá init=/bin/bash, tak jádro spustí ten program=bash a ten provede zase svoje rutiny po spuštění (čte profile, bashrc a tak, nastavuje aliasy, vykonává příkazy).
Když se dá init=/bin/bash, tak ten počítač bude úplně v jiném stavu, než kdyby se pustil "obyčejný" init.
init=/někde/něco prostě znamená "až bude jádro hotové, spustí /někde/něco". Klidně si můžeš říct init=/sbin/reboot (myslím že je to ta cesta), ale pak se nesmíš divit, až se ti ten počítač restartuje
Stačí tak?