前幾天在Oracle VirtualBox中克隆了一個CentOS 6 guest後,出現了一個奇怪的錯誤,登錄到CentOS guest後,發現網卡不見了。 我無法再通過 SSH 連接到我的 CentOS 客戶機。
我使用以下命令檢查了 IP 地址:
# ifconfig
示例輸出:
lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
正如您在上面的輸出中看到的, eth0 不顯示配置詳細信息。僅顯示環回接口詳細信息。
我試過重啟網絡服務來解決這個問題。
# service network restart
沒有什麼!我剛收到以下錯誤:
Bringing up interface eth0: Device eth0 does not seem to be present, delaying initialization
我認為您的網絡配置文件中可能存在配置錯誤。所以我決定檢查 eth0 配置文件以確保一切正確。
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
示例輸出:
DEVICE=eth0 BOOTPROTO=none DEVICE=eth0 GATEWAY=192.168.1.1 HWADDR=08:00:27:DC:33:3F IPADDR=192.168.1.150 NETMASK=255.255.255.0 NM_CONTROLLED=no ONBOOT=yes TYPE=Ethernet USERCTL=no
一切似乎都很順利。
同樣,我嘗試使用以下命令啟動網卡:
# ifup eth0
但仍然沒有運氣!我不斷收到如下所示的相同錯誤消息。
Device eth0 does not seem to be present, delaying initialisation

添加並配置了虛擬網絡接口卡。我多次重啟網絡服務和 CentOS guest。但沒有任何幫助。我一遍又一遍地收到同樣的錯誤。
在網上搜索了一下後,我找到了解決方案。這 MAC地址問題! 克隆 CentOS 虛擬機後,CentOS 虛擬機將繼續在虛擬機設置中使用舊機器的 MAC 地址。
解決“Device eth0 does not appear to exist.Delayed initialization”錯誤
如果您遇到同樣的問題,可以通過兩種方式解決:
方法一:
要解決此問題,只需刪除文件 /etc/udev/rules.d/70-persistent-net.rules
重新啟動系統。
# rm /etc/udev/rules.d/70-persistent-net.rules
現在你可以看到網卡已經啟動了。
方法二:
如果問題依舊,請打開 eth0 配置文件:
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
記下 MAC ID (HWADDR)。
[...] HWADDR=08:00:27:DC:33:3F [...]

關閉文件。然後關閉你的 CentOS 客戶端並運行 設置 -> 網絡 -> 適配器 1 -> 高級 從 VirtualBox 菜單欄。
替換舊的 MAC ID 並更新為新的。

修改MAC地址後,[OK]單擊以保存。並打開你的客人。
然後使用以下命令檢查網卡是否啟動。
# ifconfig

就這樣。高效的!
參考鏈接:
- https://www.centos.org/forums/viewtopic.php?t=7684
CentOS 6LinuxLinux 網絡故障排除 Linux 網卡故障排除Oracle VirtualBox 虛擬機VirtualBox