Jen chci vědět rozdíl mezi v
reboot
init 6
shutdown -r now
a který je nejbezpečnější a nejlepší?
Přijatá odpověď:
Není v nich žádný rozdíl. Interně dělají přesně to samé:
-
reboot
používáshutdown
příkaz (s přepínačem -r). Příkaz shutdown slouží k ukončení všech běžících procesů, odpojení všech souborových systémů a nakonec říká jádru, aby vydalo ACPI power příkaz. Zdroj lze nalézt zde.
Ve starších distribucích příkaz reboot vynucoval ukončení procesů vydánímSIGKILL
signál (stále se nachází ve zdrojích, lze jej vyvolat pomocí-f
volba), v nejnovějších distribucích je výchozím nastavením elegantnější a init přívětivějšíinit 1 -> shutdown -r
. To zajišťuje, že se démoni před vypnutím sami vyčistí. -
init 6
říkáinit
proces k vypnutí všech vytvořených procesů/démonů, jak jsou zapsány v init souborech (v opačném pořadí, v jakém byly spuštěny) a nakonec vyvolejteshutdown -r now
příkaz k restartování počítače
Dnes v tom není velký rozdíl, protože oba příkazy dělají přesně totéž a respektují init skripty používané ke spouštění služeb/démonů tím, že pro ně vyvolávají vypínací skripty. Kromě reboot -f -r now
jak je uvedeno níže
Existuje malé vysvětlení převzaté z manuálových stránek, proč reboot -f
není bezpečný:
-f, --force Force immediate halt, power-off, reboot. Don't contact the init system.
Upravit:
Zapomněl jsem zmínit, že v nadcházejících distribucích RHEL byste měli používat nový systemctl
příkaz pro vypnutí/reboot. Jak je uvedeno v manuálových stránkách reboot
a shutdown
jsou „starším příkazem dostupným pouze pro kompatibilitu“. a systemctl
metoda bude jediná bezpečná.