Перезапуск сети в Debian Jessie

Я хотел бы знать, какой способ перезапустить сетевой сервис в Debian Jessie. Я знаю, что я могу использовать:

service networking restart

или же

/etc/init.d/networking restart

что в любом случае дал мне проблемы с соединением SSH, или

invoke-rc.d networking restart

и другие два метода с systemctl и с ifup / ifdown.

Но какой правильный способ сделать это?

2 ответа

Решение

Я бы использовал service команда, потому что она более согласована между различными дистрибутивами Итак, из упомянутых вами команд я бы выбрал вариант:

service networking restart

И я бы определенно запустил его внутри screen сеанс или другим способом убедитесь, что он не завершится в случае, если вы потеряли соединение с оболочкой, в которой вы его набрали. (Я пытался потерять соединение с машиной, войдя в ssh и затем перезапуск сети только для того, чтобы соединение ssh было разорвано, пока сеть не работала, и отправил HUP service такой, что это не будет поднимать сеть снова.)

В прошлом были системы, где service была простая обертка вокруг скриптов в /etc/init.d и первые две из ваших команд будут делать то же самое. Но в настоящее время существуют системы, в которых service иногда будет делать что-то другое, и вообще service лучше знает, что делать с вашим конкретным дистрибутивом. А также invoke-rc.d также зависит от распределения.

Хоть service является наиболее похожим во всех дистрибутивах, но имена сервисов могут отличаться. Например, есть дистрибутивы, в которых сервис называется network и другие, где это называется networking, И в некоторых конфигурациях может быть более целесообразно перезагрузить network-manager скорее, чем networking,

Я только что перезапустил сеть на Debian 11 (Bulseye):

      # systemctl restart networking

Связь не потерялась. Я считаю, что это также сработало для меня и в старых выпусках.

Другие вопросы по тегам