Редактирование сетевых интерфейсов без перезагрузки системы

Я хотел бы внести некоторые изменения в мою сетевую конфигурацию, отредактировав мой файл /etc/network/interfaces. Какой самый чистый способ внести изменения в этот файл и заставить их вступить в силу, без перезагрузки? Как правило, я делал:

  1. Редактировать файл
  2. service networking restart

Но у меня такое впечатление, что это не " правильный способ внесения подобных изменений.

23
задан 27 July 2017 в 23:22

7 ответов

Почему вы не думаете, что это правильный путь. Подумайте, что может сделать Ubuntu дополнительно во время загрузки? В Ubuntu есть список сервисов, которые нужно запускать во время загрузки, у каждого сервиса есть список последовательных команд для запуска. Ubuntu просто запускает сетевой сервис через скрипт /etc/init.d/networking, который содержит некоторые команды, необходимые для запуска сетевого сервиса. Таким образом, если какое-либо изменение необходимо применить к вашей сети, вам необходимо перезапустить службу, а затем вызвать последовательные команды вашей службы.

0
ответ дан 27 July 2017 в 23:22

Завершите работу сетевого интерфейса, используя

sudo ifdown eth0

(замените eth0 на интерфейс, который вы хотите изменить), и снова включите его, используя

sudo ifup eth0
0
ответ дан 27 July 2017 в 23:22

В Сервере Ubuntu 16.04 необходимо использовать IP команду для сбрасывания адреса прежде, чем перезапустить сети, иначе любые изменения адреса в файле интерфейсов не вступят в силу:

$ sudo ip addr flush interface-name
$ sudo systemctl restart networking

я получил этот ответ от эта полезная статья

3
ответ дан 27 July 2017 в 23:22

/etc/network/interfaces управляет инструментами ifupdown.

Итак, после внесения изменений вы можете просто сказать, например, sudo ifup eth0.

0
ответ дан 27 July 2017 в 23:22

Остановите все интерфейсы, используя

sudo /etc/init.d/networking stop

Сконфигурируйте (отредактируйте) свои интерфейсы, как вы хотите, затем

Запустите их снова

sudo /etc/init.d/networking start

Нет необходимости перезагрузка.

0
ответ дан 27 July 2017 в 23:22

На самом деле ни одна из этих работ. Проверено на Ubuntu 16.10. это не имело никакого эффекта.

  • ifdown ens3 и ifup ens3
  • остановка и запуск сервисной сети
  • , перезагрузка сервисной сети
  • systemctl, остановка network.service и повторный запуск.

Через все это вернулся старый dhcp ip, а не статический. Интересно, это намеренно?

0
ответ дан 27 July 2017 в 23:22

Попробуйте выполнить сброс между ifup и ifdown. Это работало на Mendel (Google Coral), основанном на Debian.

sudo ifdown eth0 && sudo ip addr flush eth0 && sudo ifup eth0

Без сброса интерфейс перезапустился бы без чтения файла конфигурации.

0
ответ дан 15 January 2020 в 21:16

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

Похожие вопросы: