Voglio solo sapere la differenza tra in
rebootinit 6shutdown -r now
e qual è il più sicuro e il migliore?
Voglio solo sapere la differenza tra in
reboot init 6shutdown -r nowe qual è il più sicuro e il migliore?
Risposte:
Non c'è differenza in loro. Internamente fanno esattamente la stessa cosa:
rebootusa il shutdowncomando (con l'opzione -r). Il comando shutdown usato per uccidere tutti i processi in esecuzione, smontare tutti i file system e infine dice al kernel di emettere il comando di alimentazione ACPI. La fonte può essere trovata qui . Nelle distribuzioni precedenti il comando di riavvio costringeva i processi a uscire emettendo il SIGKILLsegnale (ancora presente nelle fonti, può essere invocato con l' -fopzione), nelle distribuzioni più recenti il valore predefinito è più elegante e amichevole init 1 -> shutdown -r. Questo assicura che i demoni si ripuliscano da soli prima dell'arresto.
init 6indica al initprocesso di arrestare tutti i processi / demoni generati come scritto nei file init (nell'ordine inverso in cui sono stati avviati) e infine invoca il shutdown -r nowcomando per riavviare la macchina
Oggi non c'è molta differenza poiché entrambi i comandi fanno esattamente lo stesso, e rispettano gli script di init utilizzati per avviare servizi / demoni invocando gli script di spegnimento per loro. Salvo reboot -f -r nowquanto indicato di seguito
C'è una piccola spiegazione presa dalle manpage del perché reboot -fnon è sicuro:
-f, --force
Forza arresto immediato, spegnimento, riavvio. Non contattare il sistema init.
Modificare:
Dimenticato di menzionare, nelle imminenti distribuzioni RHEL dovresti usare il nuovo systemctlcomando per eseguire lo spegnimento / riavvio. Come indicato nelle manpage di reboote shutdownsono "un comando legacy disponibile solo per compatibilità". e il systemctlmetodo sarà l'unico sicuro.
init 1 -> shutdown -r?
L'arresto è preferibile perché ti consente di specificare il motivo dell'azione drastica, cosa che dovresti sempre fare. Il messaggio verrà registrato nei log per i posteri. Per esempio:
shutdown -r now 'Kernel upgrade requires reboot'
È inoltre possibile eseguire un riavvio pianificato , specificando qualcosa di diverso rispetto nowal tempo di riavvio:
shutdown -r 22:00 'Work around kernel memory leak'
Quindi i tuoi utenti riceveranno promemoria periodici per uscire man mano che il tempo si avvicina: il processo sarà più ordinato e professionale.
Sui unices tradizionali reboote shutdown -r nowsono comandi molto diversi. Nell'uso tipico, rebootè sicuro da usare solo in modalità utente singolo.
shutdown -r nowè il metodo canonico per arrestare diversi * nix e più sicuro da usare in generale ed è funzionalmente equivalente a init 6.
Su FreeBSD c'è una differenza tra reboote shutdown -r now. Dalla rebootpagina man:
Normalmente, l'utilità shutdown (8) viene utilizzata quando il sistema deve essere arrestato o riavviato, dando agli utenti un preavviso per il loro destino imminente e terminando in modo pulito programmi specifici.