centos 中没有 ifcfg-eth0 配置文件的解决办法
用 CentOS-6.5-i386-LiveDVD.iso 镜像安装好CentOS 6.5系统后(已经把系统写入硬盘),发现ip在每次重启后都会还原,用ifconfig查看是有eth0网卡的(也有可能只有回环网卡lo),于是查看eth0网卡配置文件,发现在 /etc/sysconfig/network-scripts/ 目录下没有 ifcfg-eth0 这个网卡配置文件。
原因
查了一下,在官方wiki中有这样的描述:
上游的預設組態已改用 NetworkManager,而且介面預設是不會被啟用的(針對乙太網來說是較難理解)。權宜之計就是在安裝過程中,等待安裝程式詢問你的語系、鍵盤、基本安裝或其它儲存裝置後,執行「檢查裝置」並顯示「請為這台電腦命名……」的畫面。這個晝面內有一粒「設置網絡」的按鈕。點擊這個按鈕會啟動 NetworkManager。請選取名為 System eth0 的乙太網絡連線並編輯它的設定。假如你選用「自動連線」的選項,網絡連線在日後開機時便會被啟動。你也可以在安裝完成後透過 NetworkManager(「系統;選項;網絡連線」或右按通知區域內的網絡小圖示,選取「編輯連線……」)來作出這個改動。
假如你不採用 NetworkManager,你可以透過編輯網絡介面的設置檔(正常為 /etc/sysconfig/network-scripts/ifcfg-eth0)並把 ONBOOT=no 改為 ONBOOT=yes 來達到相同効果。
也就是说是centos6改用NetworkManager方式管理网络了,可以运行如下命令进行确认:
chkconfig --list | grep -i netw
结果:
NetworkManager 0:off 1:off 2:on 3:on 4:on 5:on 6:off network 0:off 1:off 2:off 3:off 4:off 5:off 6:off
这里可以看到,NetworkManager是开机启动状态,network是关闭状态。
解决办法就是关闭NetworkManager,用传统的network方式来管理网络,并补充上ifcfg-eth0文件即可
修复步骤
1、关闭NetworkManager服务
$ service NetworkManager stop
2、关闭NetworkManager开机启动
chkconfig NetworkManager off
3、添加 /etc/sysconfig/network-scriipts/ifcfg-eth0 文件
DEVICE=eth0 BOOTPROTO=static IPADDR=146.175.139.13 NETMASK=255.255.255.0 GATEWAY=146.175.139.255 HWADDR=00:25:90:81:5e:64 NM_COnTROLLED=no ONBOOT=yes TYPE=Ethernet IPV6INIT=no
注:文件内容的值根据实际情况修改
4、开机启动network
chkconfig network on
5、开启network服务
service network start
即可生效。