web-dev-qa-db-fra.com

Quelle est la méthode préférée pour redémarrer la mise en réseau dans Ubuntu et Debian

Lorsque je redémarre le réseau en utilisant:

/etc/init.d/networking restart

Je reçois cet avertissement:

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

Alors, quelle est la meilleure façon de redémarrer le réseau après avoir apporté des modifications maintenant?

Ce problème s'applique également à Debian car le paquet netbase est hérité de debian.

37
Antonius Bloch

C'est juste dire que l'option de redémarrage disparaît

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

Notez qu'il n'y a qu'une seule ligne! Cela est important lors de l'exécution du redémarrage du réseau via le réseau.

27
Mike

Exécutez la commande init.d sans paramètres, il vous dira quelle est l'utilisation:

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

Semble que le redémarrage est obsolète

Il est également obsolète dans Debian au moins depuis:

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 <[email protected]>  Sun, 06 Dec 2009 17:09:41 +0100

Le bogue connexe # 550240 ici

Ce qui est assez méchant. Pour redémarrer le réseau à partir de la télécommande, l'approche la meilleure et la plus sûre sera probablement exécutée comme suit dans une session d'écran :

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

Depuis le script d'init networking d'aujourd'hui, restart et force-reload fonctionnera dans la plupart circonstances. Je suppose qu'il est raisonnablement sûr d'ignorer l'avertissement et d'utiliser toujours le redémarrage. Cependant, je vais continuer avec la méthode 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
19
hmontoliu

J'utilise Nohup sh -c "/etc/init.d/networking stop; sleep 2; /etc/init.d/networking start". J'ajoute sleep 2 parce que je pense que les problèmes de redémarrage ont peut-être quelque chose à voir avec les latences dépendant du matériel, mais ce n'est pas confirmé et c'est une règle générale que j'ai un peu honte de rendre public. Vous pouvez donc ignorer cela si vous vous sentez rationnel!

5
Eduardo Ivanec

La commande ci-dessous fonctionne bien dans un environnement de serveur, sans lancer d'avertissement. Il implémente la demande d'arrêt et de démarrage sur le service de mise en réseau.

Sudo service networking start
3
Erick

que diriez-vous Nohup sh -c "ifdown -a && ifup -a"

2
Dazz

Dans Debian Wheezy,

service networking restart

semble faire ce qui est attendu et ne se plaint pas.

Je suppose que dans Jessie avec systemd, cela peut être différent à nouveau.

1
mivk

Si vous ne trouvez pas la raison pour laquelle la mise en réseau ne parvient pas à redémarrer, faites-le en mode détaillé dans une session screen:

ifdown -v --force eth0; ifup -v eth0
0
sanmai