無法運行 ifdown eth0 && ifup eth0

無法運行 ifdown eth0 && ifup eth0

將我們的 Ubuntu 農場加入到 Windows 網域,並將 DC 的 IP 新增至 /etc/network/interfaces 後,我嘗試像在其他 Ubuntu 伺服器上所做的那樣反彈接口,但出現錯誤。

ifdown: interface eth0 not configured
RTNETLINK answers: File exists
Failed to bring up eth0

/etc/network# cat run/ifstate 顯示:

lo=lo
eth2=eth2
eth1=eth1

我查看了 /run/network/ifstate 並將 eth0=eth0 添加到文件末尾。仍然無法運行命令ifdown eth0 && ifup eth0

由於該伺服器的性質,我需要將重新啟動保持在最低限度。有誰知道導致此問題的原因以及我該如何解決它?我們有另一台伺服器也有同樣的問題。

更新:這是我的 /etc/network/interfaces 的 eth0 部分

auto lo
iface lo inet loopback

# Label public
auto eth0
iface eth0 inet static
    address XXX.XXX.X95.56
    netmask 255.255.255.0
    gateway XXX.XXX.X95.1
iface eth0 inet6 static
    address 2001:XXXX:XXXX:XXX:XXXX:XXXX:XXXX:XXXX
    netmask 64
    gateway fe80::def
    dns-nameservers 192.168.XXX.XXX 173.203.4.9 173.203.4.8

如果我運行ifconfig eth0 down介面會關閉但ifconfig eth0 up不會恢復。諷刺的是,我的 AD 網域的 nslookup 此時起作用了。我假設它現在使用我新增到 LAN 連接埠的 DNS 條目來執行此操作。重新啟動伺服器即可恢復 eth0。

更新2:運行sudo ifup -v eth0

Configuring interface eth0=eth0 (inet)
run-parts --verbose /etc/network/if-pre-up.d
ip addr add XXX.XXX.XX5.56/255.255.255.0 broadcast XXX.XXX.X95.255    dev eth0 label eth0
RTNETLINK answers: File exists
Failed to bring up eth0.

答案1

就我而言,我對一台 Ubuntu 機器進行了鏡像,並將該鏡像放置在其他幾台機器上。我開始讓他們設計出沒有命名為 eth0 和 wlan0 而是命名為 eth1 和 wlan1 的介面。

發生的事情是這樣的:有一個檔案將每個適配器的 MAC 位址與每個適配器的名稱(eth{n} wlan{​​n} 等)連結起來。如果您啟動並且作業系統發現eth0 與其他某個MAC 位址(在我的情況下,來自主機)綁定,它將創建一個名為eth1 的新接口,並且/etc/network/interfaces 內部的情況開始出現問題。

解決方案:刪除檔案/etc/udev/rules.d/70-persistent-net.rules 並重新啟動(對不起,OP)。該檔案將在啟動時使用該電腦的正確設定重新建立。

對於那些像我一樣在成像環境中經歷過這種情況的人,請考慮將此文件作為 sysprep 刪除。您需要刪除它,然後在下次啟動作業系統之前捕獲您的映像。

我不能確定我的情況與你的情況相同,但如果聽起來這是有道理的,那麼嘗試一下應該不會有什麼壞處。祝你好運

相關內容