GNU/Linux >> Znalost Linux >  >> Linux

Linux – Proč Linux umožňuje „init=/bin/bash“?

Nedávno jsem zjistil, že když upravím GRUB před bootováním a přidám rw init=/bin/bash Skončím s kořenovým shellem.

Být ve stavu, že chci všemu rozumět, chtěl bych vědět, proč se to děje. Chci říct, je to chyba? je to vlastnost? je to tam, aby pomohl administrátorům opravit věci, protože to funguje, pouze pokud máte fyzický přístup k počítači?

Poskytuje jej GRUB nebo skutečné jádro?

Přijatá odpověď:

Toto je funkce a používá se pro údržbu systému:umožňuje systémovému správci obnovit systém ze zpackaných inicializačních souborů nebo změnit zapomenuté heslo.

Tento příspěvek v mailing listu Red Hat vysvětluje některé věci:

V systémech podobných Unixu je init prvním procesem, který se spustí, a
konečným předkem všech procesů, které kdy byly spuštěny. Je zodpovědný za
spuštění všech init skriptů.

Říkáte linuxovému jádru, aby spouštělo /bin/bash jako init, nikoli
systémové init. […]

Nic tedy nezneužíváte, pouze používáte standardní vlastnost jádra.

Kromě toho, jak je uvedeno v komentáři, rw příznak je oddělený od init= , pouze říká systému, aby připojil kořenový souborový systém jako čtení-zápis (takže můžete např. upravit špatně nakonfigurovaný soubor nebo změnit heslo).


Linux
  1. Linux – Proč v systému není přítomen žádný souborový systém Rootfs?

  2. Linux – Proč detekce USB Stick trvá tak dlouho?

  3. Proč /bin/sh ukazuje na /bin/dash a ne /bin/bash?

  1. 12 důvodů, proč by měl být každý správce systému Linux líný

  2. Proč se Ctrl + V nevloží do Bash (Linux shell)?

  3. Proč Linux zahřívá můj počítač?

  1. Co je POSIX? Proč je to pro uživatele Linuxu/UNIXu důležité?

  2. Proč je Linux podobný Unixu, když je jeho jádro monolitické?

  3. Jak Linux používá hodiny reálného času?