Linux

將 CentOS 6.9 VM 遷移到 Server 2016 缺少 eth0 並在引導期間停止

  • March 12, 2018

我有一個在 Windows Server 2008 R2 上的 Hyper-V 中執行的現有 CentOS 6.9 VM。我想將此機器遷移到新的 Windows Server 2016 安裝。這是最後一個允許我關閉舊伺服器的 VM。

我的問題是在新伺服器上找不到 eth0 網路適配器。這個問題更加複雜,因為虛擬機在引導過程中嘗試掛載 cifs 共享時*停止。*檢查 Google 會顯示有關缺少網路適配器驅動程序的其他投訴,但由於啟動問題,正常的解決方法對我沒有幫助。

我等了超過 8 分鐘,cifs 掛載超時,VM 繼續啟動。那時我的維護視窗即將結束,因此我不得不放棄並重新啟動舊伺服器上的 VM。

恐怕我需要等到我可以計劃一個更長的維護視窗,以便有時間禁用現有 VM 上的 cifs 掛載,這樣我就可以在重新啟用之前對遷移的 VM 上的網路適配器進行故障排除cifs 掛載。我可能需要幾個月的時間才能打開這樣的視窗。

我可以在每週 1 小時的視窗內完成修復的任何想法,記住我需要留出大約 20 分鐘的時間來將 180GB vhd 文件複製到新伺服器?

網路的解決方案分為兩部分:

  1. /etc/sysconfig/network-scripts/ifcfg-eth0我註釋掉以HWADDR原始 VM 開頭的行(我以前做過)。
  2. 我還需要/etc/udev/rules.d/70-persistent-net.rules在關閉原始 VM 之前進行編輯。我只是用我的網卡註釋掉了這一行,以便 udev 可以重新檢測 NIC 並為其指定與我的ifcfg-eth0文件匹配的相同名稱。現在,如果需要,我可以重新啟動原始文件,但是當 vhd 文件複製到新主機時,網路也會正確啟動。

我還修復了我的/etc/rc.d/rc.local文件,其中有一個條目被阻止並且不允許我使用控制台來修復問題。

不幸的是,我仍然遇到啟動後幾秒鐘網路再次不可用的問題。我可以開始 ping 機器,它會在啟動期間網路可用時立即響應,但是在 15-20 ping 之後它會再次停止響應,並且無論我做什麼都不會回來。我仍然可以從 VM 的控制台 ping 本地 IP 地址(即:不是環回/家庭地址),但沒有其他地址。但是網路確實首先出現,我可以訪問控制台,所以我將單獨解決這個新問題。


作為更新,我也遇到了這個錯誤:

https://bugzilla.redhat.com/show_bug.cgi?id=655855

“修復”是禁用該irqbalance服務:

sudo chkconfig irqbalance off

我將這台伺服器安裝到更新的發行版的另一個原因。

引用自:https://serverfault.com/questions/895216