Qual è il metodo preferito per riavviare la rete in Ubuntu e Debian


37

Quando riavvio la rete utilizzando:

/etc/init.d/networking restart

Ricevo questo avviso:

 Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces

Qual è il modo migliore per riavviare la rete dopo aver apportato modifiche ora?

Questo problema si applica anche a Debian poiché il pacchetto netbase è ereditato da debian.

Risposte:


27

Sta solo dicendo che l'opzione di riavvio sta scomparendo

/etc/init.d/networking stop; /etc/init.d/networking start

Nota che c'è solo una riga! Ciò è importante quando si esegue il riavvio della rete attraverso la rete.


28
due comandi: - / cattiva idea se si è in remoto. Meglio usare una fodera:/etc/init.d/networking stop; /etc/init.d/networking start
hmontoliu,

@hmontoliu: poi di nuovo sembra saggio usare il riavvio deprecato poiché non si può dimenticare il comando di avvio
mbx

1
Se sei in remoto, dovresti sempre usarescreen
Avio

5
Lo schermo non sarà davvero utile se si interrompe la rete su un server remoto. In questo caso dovresti cercare una sorta di accesso diretto, che non è sempre conveniente.
metakermit,

1
stope startovviamente non sono deprecati ma usati in combinazione hanno lo stesso potenziale problema restartdi prima.
Håkan Lindqvist,

19

Esegui il comando init.d senza parametri, ti dirà qual è l'uso:

~# /etc/init.d/networking 
Usage: /etc/init.d/networking {start|stop}

Sembra che il riavvio sia obsoleto

È deprecato anche in Debian almeno dal momento che:

netbase (4.38) unstable; urgency=low

  * Create /etc/sysctl.d/bindv6only.conf on upgrades and new installs
    to set net.ipv6.bindv6only=1.
  * Made the init script check for swap over the network. (Closes: #540697)
  * Temporarily depend on initscripts to work around a bug in multistrap.
    (Closes: #556399)
  * etc-services: added sieve (4190/tcp).
  * etc-services: removed sieve (2000/tcp). (Closes: #555664)
  * Made the init script warn that using the force-reload and restart
    parameters is not a good idea. (Closes: #550240)

 -- Marco d'Itri <md@linux.it>  Sun, 06 Dec 2009 17:09:41 +0100

Il bug relativo # 550240 qui

Che è abbastanza brutto. Per riavviare la rete da remoto, probabilmente l'approccio migliore e più sicuro verrà eseguito all'interno di una sessione dello schermo :

~# /etc/init.d/networking stop; /etc/init.d/networking start

A partire dall'odierno networkingscript init restarte force-reloadfunzionerà nella maggior parte dei casi. Immagino sia ragionevolmente sicuro ignorare l'avvertimento e continuare a usare il riavvio . Comunque andrò con il modo stop + start :-)

case "$1" in
start)
    process_options

    log_action_begin_msg "Configuring network interfaces"
    if ifup -a; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

stop)
    check_network_file_systems
    check_network_swap

    log_action_begin_msg "Deconfiguring network interfaces"
    if ifdown -a --exclude=lo; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

force-reload|restart)
    process_options

    log_warning_msg "Running $0 $1 is deprecated because it may not enable again some interfaces"
    log_action_begin_msg "Reconfiguring network interfaces"
    ifdown -a --exclude=lo || true
    if ifup -a --exclude=lo; then
        log_action_end_msg $?
    else
        log_action_end_msg $?
    fi
    ;;

*)
    echo "Usage: /etc/init.d/networking {start|stop}"
    exit 1
    ;;
esac

Veramente? Il riavvio è utile quando si lavora in remoto!
Antonius Bloch,

2
Vedi la mia modifica. Sono d'accordo che un riavvio a prova di proiettile sarebbe meglio di stop + start
hmontoliu,

Penso che valga la pena notare che stop+ startsembra fare esattamente la stessa cosa che restartfarebbe. Non sembra essere più sicuro, oltre a non utilizzare un'opzione deprecata (deprecata specificamente per scoraggiare questa operazione).
Håkan Lindqvist,

5

Io uso nohup sh -c "/etc/init.d/networking stop; sleep 2; /etc/init.d/networking start". Aggiungo sleep 2perché penso che forse i problemi con il riavvio abbiano qualcosa a che fare con le latenze dipendenti dall'hardware, ma questo non è confermato e una semi-regola empirica che mi vergogno in qualche modo di rendere pubblica. Quindi puoi saltarlo se ti senti razionale!


quindi sostanzialmente stai dicendo che devo alias restart = "nohup sh -c /etc/init.d/networking stop; sleep 2; /etc/init.d/networking start" perché qualcuno che usa Debian pensa al proprio lavoro sarà in linea se evolveremo Linux al di là di un sistema operativo più avido?

1
Affatto. Quanto sei simpatico!
Eduardo Ivanec,

3

Il comando seguente funziona bene in un ambiente server, senza generare avvisi. Implementa la richiesta di arresto e avvio sul servizio di rete.

sudo service networking start

Ciò non sembra fermare && start. Comunque, non è stato per me in Debian Wheezy. Forse lo fa in qualche altra distribuzione.
marzo

Funziona bene in Ubuntu
Erick,

2

che ne dite di nohup sh -c "ifdown -a && ifup -a"


1

In Debian Wheezy,

service networking restart

sembra fare ciò che è previsto e non si lamenta.

Immagino che in Jessie con systemd potrebbe essere di nuovo diverso.


Con systemdè systemctl restart networkingIIRC, ma il "vecchio" servicemodo sta ancora lavorando.
wb9688,

0

Se non riesci a trovare il motivo per cui la rete non si riavvia, fallo in modalità dettagliata all'interno di una screensessione:

ifdown -v --force eth0; ifup -v eth0
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.