Перезапуск сети в 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
Связь не потерялась. Я считаю, что это также сработало для меня и в старых выпусках.