Как перезапустить сетевой сервис?
Я пытался использовать
sudo service networking restart
а также
sudo /etc/init.d/network restart
но они оба вырывают оконный менеджер, и я больше не могу использовать свою клавиатуру для ввода в X.
когда я использую /etc/init.d/
метод жалуется, говоря, что я должен использовать служебную утилиту
e.g. service networking restart
но он падает точно так же.
Есть ли графический интерфейс для перезапуска сети?
15 ответов
Для десктопов
Пытаться
sudo service network-manager restart
вместо.
Ubuntu использует сетевой менеджер вместо традиционной сетевой модели Linux. поэтому вы должны перезапустить network-manager
сервис вместо network
оказание услуг. Или используйте ifup / down.
Для серверов
Проверьте этот ответ.
Для серверов
Перезапуск сети на настольном компьютере приведет к остановке dbus и множества сервисов и никогда не запустится снова, что обычно приводит к невозможности использования всей системы.
Поскольку Ubuntu запускает основанную на событиях сеть, просто нет способа отменить все это и повторить все, поэтому перезапуск просто невозможен. Вместо этого рекомендуется использовать ifdown и ifup на интерфейсах, которые вы на самом деле хотите перенастроить:
sudo ifdown --exclude=lo -a && sudo ifup --exclude=lo -a
Вы могли бы попробовать
ifconfig eth0 down && ifconfig eth0 up
(или как называется ваш сетевой интерфейс), чтобы перезапустить сеть.
Ubuntu CLI: перезапустить сетевой сервис либо
sudo /etc/init.d/networking restart
или же
ifdown eth0
ifup eth0
Для сервера ubuntu 18.04 это работает:
sudo systemctl restart systemd-networkd
В настоящее время наиболее прямым способом перезапуска сетевых служб является использование элементов управления systemd, а именно утилиты управления systemd из командной строки. systemctl
, Эта команда перезапустит NetworkManager:
sudo systemctl restart NetworkManager.service
Более подробную информацию можно найти здесь.
service network-manager restart
не работает:
stop: Unknown job network-manager
start: Unknown job network-manager
Единственное, что работает:
ifconfig eth0 down
ifconfig eth0 up
sudo service network-manager restart
ни:
sudo service networking restart
Не работает на сервере Ubuntu 14.04
только:
sudo ifdown eth0:0
sudo ifup eth0:0
Работает. Измените eth0:0 на ваш интерфейс.
У меня та же проблема. Это известная ошибка https://bugs.launchpad.net/ubuntu/+source/dbus/+bug/1102507
С помощью service network-manager restart
работает через
Попробуйте использовать индикатор (верхняя строка меню), чтобы отключить, а затем включить сеть.
Если вы можете перезапустить сеть с помощью апплета NetworkManager, вам не нужно перезапускать сам NetworkManager (по крайней мере, в большинстве случаев).
В этом случае, чтобы перезапустить все соединения, используйте этот код из оболочки или в скрипте:
nmcli nm enable false
sleep 5
nmcli nm enable true
Подробности можно найти на странице руководства интерфейса командной строки NetworkManagar.
Обратите внимание, что эти команды действуют как апплет, поэтому им не нужны никакие дополнительные привилегии (нет sudo
или что угодно).
Я действительно не думаю, что есть метод GUI - по крайней мере по умолчанию.
Я также не уверен, что Вы подразумеваете под "перезапуском сетевого сервиса", но я чувствую, что следующее может помочь.
До Ubuntu 16.04
sudo killall NetworkManager
Это убивает NetworkManger, который автоматически перезапускается после этого. Это не сломает систему.
Ubuntu 16.04
sudo killall NetworkManager && sudo NetworkManager
Исходя из моего личного опыта, кажется, что в Ubuntu 16.04 NetworkManager не всегда перезапускается сам по себе, и лучше запустить его вручную.
В Ubuntu 14.04 есть новая "функция", которая делает невозможным перезапуск. Выключите интерфейс и работает.
sudo ip link set eth0 down
sudo ip link set eth0 up
Я могу перезапустить сетевую службу на ubuntu с помощью команды.
sudo systemctl restart network-manager
Если вы используете Ubuntu 14.04 Desktop или Server, вы можете перезагрузить сеть:
sudo -i
( ifdown $(ifquery --list -X lo|xargs echo) && ifup $(ifquery --list -X lo|xargs echo) )&
Это использует сетевой менеджер Ubuntu, чтобы отключить, а затем включить eth0:
nmcli nm enable false eth0 && nmcli nm enable true eth0
Если ваше соединение имеет другое имя, используйте его. Вы можете узнать имя вашего соединения, используя команду:
nmcli c status
Ответ rmano блестящий. Решает так много вопросов.
Замечание по улучшению: в U15 у меня другой синтаксис для nmcli:
Для анализа сделайте:
nmcli networking connectivity
Чтобы остановить сервис, сделайте:
nmcli networking off
и для перезапуска сделать:
nmcli networking on
Судо не требуется. Спасибо, Рмано!
Альтернативный подход для сервера (по состоянию на Ubuntu 18.04):
Установите пакет ifupdown2:
apt install ifupdown2
использование
service networking restart
команда