Redémarrer le réseau sur Debian Jessie

14

Je voudrais savoir quelle est la bonne méthode pour redémarrer le service réseau dans Debian Jessie. Je sais que je peux utiliser:

service networking restart

ou

/etc/init.d/networking restart

qui m'a de toute façon causé des problèmes de connexion ssh, ou

invoke-rc.d networking restart

et deux autres méthodes avec systemctl et ifup / ifdown .

Mais quelle est la bonne façon de procéder?

cloud81
la source
Essayez de demander sur unix.stackexchange.com , ils ont une meilleure connaissance des différentes saveurs et dialectes Linux.
Massimo
1
Oh, et les trois premières commandes sont fondamentalement équivalentes serviceet invoke-rc.dn'appellent /etc/init.d/servicenamequ'avec les mêmes options qui leur ont été données.
Massimo

Réponses:

11

J'utiliserais la servicecommande car elle est plus cohérente sur différentes distributions. Donc, parmi les commandes que vous avez mentionnées, la variante que j'opterais est la suivante:

service networking restart

Et je l'exécuterais certainement dans une screensession ou par d'autres moyens pour m'assurer qu'il ne manquerait pas de se terminer au cas où vous perdriez la connexion avec le shell dans lequel vous l'avez tapé. (J'ai essayé de perdre la connectivité à une machine en me connectant avec sshpuis en redémarrant le réseau uniquement pour que la connexion ssh se termine alors que le réseau était en panne et envoyer un HUP à servicetel qu'il ne réactiverait pas le réseau.)

Dans le passé, il y avait des systèmes où il y serviceavait un simple wrapper autour des scripts /etc/init.det les deux premières de vos commandes feraient exactement la même chose. Mais de nos jours, il existe des systèmes servicequi font parfois quelque chose de différent et, en général, servicesavent mieux quoi faire sur votre distribution particulière. Et invoke-rc.ddépend également de la distribution.

Bien qu'il servicesoit le plus similaire entre les distributions, il est toujours possible que les noms de service soient différents. Par exemple, il existe des distributions où le service est nommé networket d'autres où il est nommé networking. Et dans certaines configurations, il peut être plus approprié de redémarrer network-managerplutôt que networking.

kasperd
la source
Merci pour l'explication, très clair! La prochaine fois, j'utiliserai screen avec la commande de service mentionnée précédemment.
cloud81
3
n'est-il pas déconseillé d'utiliser le service sur les systèmes systemd?
greenone83
@ greenone83 Il n'y a aucune indication dans la page de manuel sur la dépréciation de la commande. Sur tous les systèmes où je l'ai vu, il s'agit d'un script wrapper pratique quel que soit le système d'initialisation utilisé par la distribution. Et il a été mis à jour car init a été repensé. Ce qui signifie que vous pouvez utiliser la même servicecommande maintenant qu'il y a 10 ans, et cela fera la bonne chose même si les scripts d'initialisation sous-jacents se comportent totalement différemment.
kasperd
@kasperd cela explique à peu près mon point ... unix.stackexchange.com/questions/240528/… vous pouvez le faire ... mais alors vous pourriez déranger systemd
greenone83
1
J'ai échangé mes câbles LAN, ce qui a tué la connexion réseau. Le redémarrage du système systemctl n'a rien fait, mais le redémarrage du réseau de service a fonctionné à merveille. J'exécute Debian Jessie.
aSystemOverload