为什么我的网络在启动期间无法访问?

为什么我的网络在启动期间无法访问?

我最近将 Ubuntu 14.04 升级到 Ubuntu 16.04,其中包括从 Upstart 到systemd.从那时起,当系统启动时,大约有一半的时间会陷入紧急 shell。

我已经追踪到系统尝试从远程数据服务器挂载目录。来自journalctl失败的引导尝试期间:

$ journalctl -b 0 -u dataserver.mount -u network-online.target -u network.target -u network-pre.target -u remote-fs.target -u remote-fs-pre.target --no-page 
systemd[1]: Reached target Network (Pre).
systemd[1]: Reached target Network.
systemd[1]: Reached target Network is Online.
systemd[1]: Mounting /dataserver...
mount[293]: mount.nfs: Network is unreachable
systemd[1]: dataserver.mount: Mount process exited, code=exited status=32
systemd[1]: Failed to mount /dataserver.
systemd[1]: dataserver.mount: Unit entered failed state.

dataserver.mount是远程目录的挂载。systemd尝试挂载目录时,网络似乎不可用dataserver,导致紧急 shell 崩溃。

我已经尝试了三天来弄清楚到底发生了什么,但我却不知所措。

一些注意事项:

  • dataserver.mount/etc/fstab是从 Ubuntu 14.04 继承的条目自动生成的。

这是/etc/fstab条目:

# Mount dataserver-store to /dataserver
99.99.99.99:/data/NFS/datastore01            /dataserver          nfs     nofail,rw,soft,intr,actimeo=60 0 0

这是生成的systemd单位/run/systemd/generator/dataserver.mount

# Automatically generated by systemd-fstab-generator

[Unit]
SourcePath=/etc/fstab
Documentation=man:fstab(5) man:systemd-fstab-generator(8)

[Mount]
What=99.99.99.99:/data/NFS/datastore01
Where=/dataserver
Type=nfs
Options=nofail,rw,soft,intr,actimeo=60
  • 我没有在的条目中使用该_netdev选项,因为我的理解是它是多余的,它会自动识别 NFS 安装的网络设备。dataserver/etc/fstabsystemd

  • 我有大量来自各种诊断工作的输出,在不知道相关内容的情况下无法发布。我很乐意根据要求添加任何内容。

如何确定在引导期间尝试挂载时网络无法访问的原因?

编辑:我昨天花了一整天的时间试图弄清楚我的网络是如何配置的。我仍然不确定,但我可以告诉你的是: NetworkManager.servicesystemd-networkd.serviceifupdown.service在系统上处于非活动/死亡状态。 networking.service在系统上处于活动状态。 /etc/network/interfaces存在于系统上,但我无法知道哪个程序或服务正在用它做什么。

相关内容