“等待网络配置”问题


72

ubuntu启动时,有时会出现此问题。有时您无法真正启动到界面。

用五个点启动屏幕并显示一条消息:

等待网络配置

其次是:

等待额外的60秒进行网络配置

Answers:


44

我决定采用CLI和Alt + Ctrl + F2方式,因此在登录GUI时您可以自由地执行此操作-好的,我将编写一般步骤,以便随时使用所需的任何方式。

  1. 编辑/etc/network/interfaces

    sudo nano /etc/network/interfaces
    
    1. 如果您在登录GUI时从LXTerminal键入此命令,则:

      gksudo leafpad /etc/network/interfaces
      
  2. 删除其中写的任何内容,并保持以下内容:

    auto lo
    iface lo inet loopback
    

最好保留“ interfaces”文件的备份副本,以防万一,因此请确保在执行任何操作之前先保存“ interfaces.bak”文件

  1. CtrlO如果使用的是nano,则为+;如果使用的是Leafpad,则为Ctrl+ S(文件>保存)。

  2. CtrlX如果使用的是nano,则为+;如果使用的是Leafpad,则为Ctrl+ Q(“文件”>“退出”)。

  3. 重启。

  4. 做完了


3
auto lo iface lo inet loopback不起作用
抽奖

@draw必须在两行上:第一行是auto lo; 第二行是iface lo inet loopback
丹尼尔·库尔曼

2
@danielkullmann; 自动 (第一行)iface lo inet回送;(第二行)这对我也不起作用。我需要手动配置接口并提供其地址!
mythicalcoder

3
我的interfaces文件看起来完全像这样,但是问题仍然存在/:
Andy

5
请注意,这仅在network-manager安装后才起作用。它安装在Ubuntu的桌面版本上,而不是服务器版本上。如果您尚未network-manager安装,请执行此操作,那么所有接口都将
无法

37

在我遇到的每种情况下,它都在/ etc / network / interfaces中出现问题

您不必像先前的文章中建议的那样删除所有内容,而应检查常见问题。

在我的情况下,它正在定义其他以太网IPS的网关参数。您只需要为每张卡定义主接口的网关。

我的意思是,如果您的文件如下所示:

auto eth0
iface eth0 inet static
  address 10.0.0.5
  netmask 255.255.255.0
  network 10.0.0.0
  gateway 10.0.0.1

auto eth0:0
iface eth0:0 inet static
  address 10.0.0.6
  netmask 255.255.255.0
  network 10.0.0.0
  #gateway 10.0.0.1

第二个网关参数将导致ubuntu在引导过程中挂起60秒钟以上,您只需要为第一个eth0部分定义网关,您就需要为任何其他网卡,IE eth1,wlan0等定义网关,但对于分配给同一网卡的其他IPS。早期版本的Ubuntu对此没有任何问题,但是Ubuntu 12.04不喜欢它。。。如果可以简单地忽略它,那就太好了。

我确定此文件中还有其他“问题”可能会导致此问题,因此您应该检查文件并确保没有错别字等。


“网络”选项已过时,不再需要。
jdthood

2
此答案不适用于我,此文件的任何活动节中都没有网关
memnoch_proxy 2013年

3
这是我需要的答案
Patrick Chu

1
我遇到了完全相同的问题,该解决方案非常有效!
2015年

在我的情况下,以“ auto”开头的行包含了不再存在的接口“ eth2”,即不再在接口中进行配置。
RTasche '16

36

这可能也有帮助:http : //tech.pedersen-live.com/2012/05/disable-waiting-for-network-configuration-messages-on-ubuntu-boot/

基本上,您可以编辑该/etc/init/failsafe.conf文件并禁用(注释)sleep实际上使系统暂停的命令。除了完成这项工作外,至少在我看来,网络配置完全没有错误,因此一切正常。

顺便说一句,您的解决方案仅允许配置环回接口,这是我在设置中无法承受的(我必须手动设置接口和桥接器)。


3
这应该是正确的答案。许多人认为的功能failsafe.conf过于
强大

永远都不可能杀死一个故障安全的人。修复错误的配置,使之进入故障安全状态是正确的选择。错误的配置在很多地方都有,但绝对不是故障保护!
蒂诺2016年

2
我认为这是正确的答案。在克隆服务器或在紧急情况下还原备份时,我追求没有网络配置的启动。在紧急情况下,我不需要等待2分钟,但是我的配置没有任何“错误”。
FreeSoftwareServers 2016年

无法访问URL,似乎页面已关闭。它可在archive.org上找到:web.archive.org/web/20160301200431/http
rog

27

解决此问题的真正方法是使用以下命令:

sudo sed -i.old-`date +%Y%m%d-%H%M%S` '/^auto lo$/!s/^auto /allow-hotplug /' /etc/network/interfaces

/etc/network/interfaces此过程中,所有接口(除外lo)从更改autoallow-hotplug。这样,启动就不再等待接口先出现。

警告: 进行此更改后,永久连接的接口在引导后可能会一直systemd处于关闭状态,直到收到真正的插入事件为止。请参阅下面的注释。

之前的示例(请参阅auto eth0):

auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

之后的示例(请看allow-hotplug eth0):

auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

笔记:

  • 如果您在中安装网络共享/etc/fstab,请使用auto和而不是allow-hotplug网络共享的接口。否则,在引导过程中可能会发生奇怪的事情,因为在挂载网络共享之前,网络必须可用。allow-hotplug不能保证这一点。

  • 如果接口处于auto模式,则表示:“这些接口对于引导至关重要,因此在引导之前,我们必须等待它们启动。” 因此,如果它们不出现,Ubuntu将使用故障保护功能延迟启动,等待它们出现120秒。这是正确的做法。

    相反,设置为allow-hotplug告诉Ubuntu的接口是可选的。因此,它们对于启动不是必需的。

  • Ubuntu会记录安装时可用的接口,并假定它们对于以后的操作很重要。这是一个保守的选择,以防以后由于某些服务绑定到该接口而需要该接口,因为如果这些服务错过了接口启动,它们将无法启动。

  • 还有一个内核设置,它允许进程绑定到不存在的IP,因此您可以随时使用allow-hotplug,而不会损害启动进程的稳定性。但是,这是一个完全不同的故事。

注意事项(更新2018-01-04):

  • 在我这边,allow-auto与相同auto,因此无济于事(尝试过br0)。

  • 将我的系统之一升级到Debian Stretch并切换到SystemD之后,在等待(永久连接的外部)接口br0出现时,启动变得难以忍受地延迟了。但是,启动后allow-hotplug 界面br0保持关闭状态。可能是由于SystemD在此类接口上未收到任何实际或合成的插入事件引起的。我没有深入挖掘这一点,因为一些不起眼的crontab入口@reboot /sbin/ifup br0root固定对我来说。(这可行,但可能是某些事情,最好不要推荐给其他人。我想听听是否有人有更好的主意。)

((文字到此结束,其余的内容供您娱乐)

这是一个睡前故事,受此启发:

一些农作物大肆种植。他们的庄稼干dried了!因此,他们调查了为什么灌溉沟渠中的水不足。与他们的距离越来越近,他们立即发现了罪魁祸首。大坝!该死的水坝挡住了所有的水!

从这一刻起,很清楚该怎么做。“炸毁大坝!” 他们大喊大叫,开始收集炸药。然后他们都直奔水坝。

其中一位农民的小儿子向父亲询问发生了什么事。他告诉儿子:“沟里没有足够的水,所以我们炸毁了水坝!” 然后他立即离开以跟随背包。

“但是,”小家伙试图向他父亲喊道,“但是有一个阀门!只要打开阀门!” 可悲的是,他的声音太温柔,腿又短,所以这个信息没有传达给任何人。

这个男孩坐下来哭了。半小时后,他听到远处的“轰”声摧毁了他在阀门所在的水坝最喜欢的地方。

接下来发生了什么?

洪水席卷了所有珍贵的农作物。银行抢走了男孩父亲的农场。他的父亲无力支付一所好学校的学费。因此,男孩参军接受了高等教育。在那里,他了解了有关炸药物理的所有知识,现在尝试发明高炉渣坝。

这个故事与这里有什么关系?

  • 答案是农作物。
  • 小男孩在这里是这个答案。
  • 大坝是Ubuntu故障安全睡眠。
  • 阀门是正确的接口设置。
  • 水是启动过程。
  • 庄稼就是您的Ubuntu OS。
  • 充满的沟渠是启动过程的样子。

保留在中的接口设置/etc/network/interfaces被删除,消除了故障保护中的睡眠,即使有人看到关闭的阀(auto),也没有人发现它也可以敞开!


2
这是正确的答案。我希望原申请者将其选择为正确答案,并将问题标记为已解决。
thatmaheshrs

1
感谢您分享@Tino。这个故事很好,但我认为答案过于
混乱

@ndemou感谢您的注意,并进行了相应的编辑。我曾尝试用剧透的故事来讲述这个故事,但并没有按照我的喜好发布,所以我暂时将其保留了下来。
蒂诺

最好的质量答案和具有讽刺意味的故事是无价的。
Rui F Ribeiro

13

添加#了在/etc/init/failsafe.conf文件中包含所有行的前面sleep <n>。这样做将有助于快速启动。

这将导致更快的启动,并且不会解决/etc/network/interfaces文件的任何问题。解决/etc/network/interfaces文件问题不是文件的目的/etc/init/failsafe.conf

在某些情况下,您可能希望网络接口不起作用(例如,一台笔记本电脑有时仅插入eth0接口(有线连接))。我不想再等待2分钟来启动笔记本电脑,因为我没有插入有线连接。


4
这些路线中的某些路线(以及它们造成的故意延迟)是否重要?如果没有,我建议扩展此答案以解释原因。
伊利亚·卡根

2
我相信这些延迟现在完全是在ubuntu服务器配置中进行的,它们的存在是为了减少抱怨由于某些网络守护程序在存在可用接口(例如dns)之前启动而无法正常运行的人数,因此最好等待这比没有网络连接的情况下匆忙启动要快得多。
kkron 2015年

1
好答案!failsafe.conf的作者在其中留下了电子邮件,其中说明了为什么要等待两分钟(除非有静态地址)。我觉得这个人可能对启动比Windows慢48倍的Ubuntu实例
负全责

2

我有一个类似的问题。通过运行ifconfig -a,我确定计算机上唯一的网络设备是p4p1lo。没有eth0

所以我编辑/etc/network/interfaces,替换的所有实例eth0p4p1。该文件的内容现在是:

auto lo
iface lo inet loopback

auto p4p1
iface p4p1 inet dhcp

重新启动后,网络运行正常。

如果有关系,我正在使用Ubuntu 12.04.5 Server版本。


如果以太网断开,则可能替换为auto p4p1allow-hotplug p4p1并且您的计算机也会快速启动。但是,这取决于您的设置。例如,如果它是具有网络共享(NFSSamba)的工作站或服务器,则您肯定要等待网络可用才能继续操作,因此allow-hotplug这是错误的选择。
蒂诺2016年

谢谢!!随着ifconfig -a我发现,界面真的eth4eth5
francadaval
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.