一、問題描述:
VMware vSphere Client下Linux虛擬機ifconfig命令無法找到eth0設備,且/etc/sysconfig/network-scripts/中只有ifcfg-lo文件,而沒有ifcfg-eth0。
二、原因可能有兩個:
第一,單純的ifcfg-eth0文件丟失或者eth0變為eth x(可通過ifconfig -a命令查看),Linux啟動時會通過該文件自動啟用eth0網卡設備
第二,網絡適配器與Linux老版本不匹配導致
三、針對第一個原因,臨時解決方法:
使用命令ifconfig eth0 192.168.1.x可以正常設置eth0的IP,該方法僅為臨時處理辦法,系統重啟后即失效了。//注:在我的電腦運行此命令顯示找不到那個設備。
永久解決方法:
1、在/etc/sysconfig/network-scripts/目錄下新建ifcfg-eth0文件;
2、正確設置ifcfg-eth0的DEVICE、BOOTPROTO、ONBOOT、IPADDR、GATEWAY、NETMASK、NETWORK、NAME等等,比如:
DEVICE=eth0 #物理設備名稱
BOOTPROTO=static #表示靜態IP,設置為DHCP則表示動態獲取
IPADDR=192.168.1.x # IP地址
NETMASK=255.255.255.0 #子網掩碼
GATEWAY=192.168.1.1 #網關地址
ONBOOT=yes #啟動時自動啟用
四、針對第二個原因解決辦法:
新增一個老版本的網絡適配器,跟當前你的Linux系統匹配就可,如E1000
方法:在vSphere Client中更改適配器類型
在VMware vSphere Client客戶端選中虛擬機--編輯虛擬機設置,然后添加-網絡適配器,選擇E1000類型
我們通過vSphere Client客戶端,添加網絡適配器2(適配器類型為E1000),然后刪除網絡適配器1,重啟服務器。
重啟后,在/etc/sysconfig/network-scripts/下,你會看到有ifcfg-eth0和ifcfg-eth0.bak兩個配置文件,系統自動生成了新的配置文件並將原來的配置文件重命名了。
關於網絡適配器的相關介紹可參考https://www.cnblogs.com/kerrycode/archive/2016/03/28/5331108.html