无需重启系统即可编辑网络接口

Lor*_*ein 26 network-manager networking

我想通过编辑我的/etc/network/interfaces文件对我的网络配置进行一些更改。对此文件进行更改并使其生效的最干净的方法是什么,而无需重新启动?通常,我一直在做:

  1. 编辑文件
  2. service networking restart

但我的印象是,这不是进行此类更改的“正确”方式。

Flo*_*sch 11

使用关闭网络接口

sudo ifdown eth0
Run Code Online (Sandbox Code Playgroud)

(替换eth0为您要更改的界面)并使用

sudo ifup eth0
Run Code Online (Sandbox Code Playgroud)

  • 这对我不起作用。它只是给了我一个错误“eth0 未配置”。我必须重新启动系统才能使更改在 12.04 生效。 (4认同)

小智 10

在 Ubuntu Server 16.04 中,您必须在重新启动网络之前使用 ip 命令刷新地址,否则接口文件中的任何地址更改都不会生效:

$ sudo ip addr flush interface-name
$ sudo systemctl restart networking
Run Code Online (Sandbox Code Playgroud)

我从这篇有用的文章中得到了这个答案


Ach*_*chu 3

停止所有接口使用

sudo /etc/init.d/networking stop
Run Code Online (Sandbox Code Playgroud)

根据需要配置(编辑)您的接口,然后

再次启动它们

sudo /etc/init.d/networking start
Run Code Online (Sandbox Code Playgroud)

无需重新启动。

  • 这在 Ubuntu 12.04 中也不起作用。只有重新启动系统才起作用。 (3认同)

sha*_*anu 1

为什么你不认为这是正确的方法。想一想,ubuntu 在启动过程中可以做哪些额外的事情?Ubuntu 有一个启动过程中需要运行的服务列表,每个服务都有一个启动自身的连续命令列表。Ubuntu只是通过/etc/init.d/networking脚本来运行网络服务,该脚本包含一些需要运行网络服务的命令。因此,如果需要将任何更改应用于您的网络,那么您必须重新启动您的服务,方法是调用您的服务的连续命令。