《Ubuntu — NetworkManager開機提示A start job is running for Network Manager wait online (29s / no limit) 等待30s解決辦法》


1.Network Manager

Ubuntu Server:

  Ubuntu的Server版本只有終端界面,沒有桌面GUI,且Server版本不會安裝NetworkManager,所以Ubuntu Server網絡由配置文件進行配置。

  由於Server版本一般用作服務器的操作系統,服務器IP一般是固定的,通過命令修改 /etc/network/interfaces 配置文件來修改IP。

Ubuntu Desktop:

Ubuntu桌面系統,由於具有GUI,所以Desktop配置網絡:

  • 通過修改配置文件:/etc/network/interfaces 的方法;
  • 通過 NetworkManager進行配置;

NetworkManager的配置文件:

 /etc/NetworkManger/NetworkManager.conf

[main]
plugins=ifupdown,keyfile,ofono
dns=dnsmasq

[ifupdown]
managed=false

  在 /usr/share/doc 里面可以查看得知:

Devices listed in /etc/network/interfaces will be managed by NetworkManager unless the ifupdown system-config-setting is enabled and is setup to run in “Unmanaged mode”.

The config to select unmanaged/managed mode is in /etc/NetworkManager/NetworkManager.conf:
[ifupdown] 
managed=true/false

Unmanaged mode will make NetworkManager not touch any wired/wireless device matching an interface name configured in /etc/network/interfaces.

Managed mode will make NetworkManager manage all devices and will make NetworkManager honour all dhcp and static configurations for wired and wireless devices. 

從上面可以得知:

  如果managed設置為true(unmanaged模式),NetworkManager將不會配置在interfaces文件中列出的有線/無線網卡,在interfaces中列出有線/無線網卡的配置將會生效;
  如果managed設置為false(managed模式),NetworkManager將會管理配置所有的有線/無線網卡,interfaces中的配置無效;  

NetworkManager和/etc/network/interfaces關系:

  • Desktop版本默認安裝NetworkManager,並且默認使用NetworkManager管理網絡;
  • 如果手動修改了/etc/network/interfaces,則NetworkManager停止管理網絡,由配置文件interfaces內的參數對網絡進行管理,並自動會將managed參數改為true;
  • NetworkManager 只會管理 /etc/network/interfaces 里沒配置的網絡接口(當配置為true的時候);

 

2.停止Network Manager

$ systemctl status NetworkManager    //查看NetworkManager的狀態

  

 

   可以看到當前NetworkManager是處於運行狀態的。

$ systemctl disable NetworkManager  //禁止NetworkManager

  

 

  再查看一次Network Manager的狀態(要重啟一下系統):

  

   可以看到NetwrokManager的狀態是dead。

 

3.針對30s的情況

  除了直接禁止掉這個功能,也可以修改等待的時間。

  找到NetworkManager-wait-online.servic這個文件,Ubuntu下文件在/lib/systemd/system目錄下:

pipci@ubuntu:/lib/systemd/system$ cat NetworkManager-wait-online.service 
[Unit]
Description=Network Manager Wait Online
Documentation=man:nm-online(1)
Requisite=NetworkManager.service
After=NetworkManager.service
Before=network-online.target

[Service]
Type=oneshot
ExecStart=/usr/bin/nm-online -s -q --timeout=30
RemainAfterExit=yes

[Install]
WantedBy=network-online.target

  這個文件里的ExecStart=/usr/bin/nm-online -s -q --timeout=30 這行--timeout=30 是等待30s 通過vi編輯器
  把這行給成ExecStart=/usr/bin/nm-online -s -q --timeout=5 保存,等待時間變成5s

 

4.總結

  1.當我們使用Ubuntu作為系統的時候,如果我們使用靜態ip或者用interface來配置網卡,那么可以修改NetworkManager的配置文件,將manged=false該成ture。

  2.當我們確定我們一定不會使用NetworkManager來配置網卡的時候,也可以直接禁止該服務。禁止完要重啟才能生效。

  3.如果不想禁止掉NetworkManager,但是每次開機都會有等待30s。可以修改超時時間。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM