今天在Linux下做练习的时候,用ifconfig命令下看到两块网卡,一个是l0网卡,一个是eth1,开始的时候是l0和eth0的,不知道怎么就变成eth1了,于是强迫症犯了,手贱删除了所有网卡配置,结果重启network服务的时候就悲剧了。。。
首先先说我的网卡由eth0变成eth1的原因:是由于之前操作失误,而且之前也不了解这块,就跟着网上的教程做,结果把eth0配成了eht0,系统当然就找不到了,后来由于配置失败,我就在配置了一次,结果就变成eth1了,一直到今天,我才发现这个错误。。。
由于死活改不回eth0,(看到网上有教程说改的,但是我改了没什么作用。。不知道为什么)于是我一个手贱,把网卡配置全部删除,步骤大致如下:
首先把network服务停掉
1、/etc/sysconfig/network-scripts目录下,删除想要删除的网卡配置,我要删除eth1,所以rm -rf ifcfg-eth1,其他的以此类推
2、/etc/sysconfig/networking/devices目录下,删除全部文件,简单粗暴
3、/etc/sysconfig/networking/profiles/default目录下,删除全部跟eth1有关系的文件
之后启动一下network服务,现在应该只剩下一个l0网卡了,在停掉服务
编写网卡配置文件
1、/etc/sysconfig/network-scripts目录下,用vi编写配置文件,这里我命名为ifcfg-eth0(我的eth0终于要回来了)
配置大致如下:
DEVICE=eth0
ONBOOT=yes
IPADDR=172.168.0.108
BOOTBROTO=none
NETMASK=255.255.255.0
PREFIX=24
这里就简单的写了几个配置,完整的配置我记不得了,也没必要去记。我在网上找了一个比较完整的配置,大家可以看看
DEVICE=eth0 #指出设备名称
NM_CONTROLLED=yes #network mamager的参数,实时生效,不需要重启
ONBOOT=yes #设置为yes,开机自动启用网络连接
IPADDR=192.168.21.129 #IP地址
BOOTPROTO=none #设置为none禁止DHCP,设置为static启用静态IP地址,设置为dhcp开启DHCP服务
NETMASK=255.255.255.0 #子网掩码
DNS1=8.8.8.8 #第一个dns服务器
TYPE=Ethernet #网络类型为:Ethernet
GATEWAY=192.168.21.2 #设置网关
DNS2=8.8.4.4 #第二个dns服务器
IPV6INIT=no #禁止IPV6
USERCTL=no #是否允许非root用户控制该设备,设置为no,只能用root用户更改
HWADDR=00:0C:29:2C:E1:0F #网卡的Mac地址
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
NAME="System eth0" #定义设备名称
之后我在启动network服务之后,就报出了Device eth0 does not seem to be present, delaying initialization.错误,在网上查找一番之后,才发现是由于MAC地址不匹配导致的,解决方案有两个
1、/etc/udev/rules.d目录下的70-persistent-net.rules文件,打开,修改里边的MAC地址,与ifcfg-eth0中一样的即可
2、直接删除/etc/udev/rules.d/70-persistent-net.rules文件,之后重启,简单粗暴
重启之后,我们会发现network服务能正常启动了,而且当前的网卡是l0和eth0