问题描述:

ifconfig命令无法找到eth0设备,且/etc/sysconfig/network-scripts/中只有ifcfg-lo文件,而没有ifcfg-eth0。

临时解决方法一:

使用命令ifconfig eth0 192.168.1.x可以正常设置eth0的IP,该方法仅为临时处理办法,系统重启后即失效了。//注:在我的电脑运行此命令显示找不到那个设备。

永久解决方法二:

1、在/etc/sysconfig/network-scripts/目录下新建ifcfg-eth0文件;

2、正确设置ifcfg-eth0的DEVICE、BOOTPROTO、ONBOOT、IPADDR、GATEWAY、DNS1、DOMAIN、NETMASK、NETWORK、NAME等等,比如:

DEVICE=eth0                    物理设备名称

IPADDR=192.168.1.x         IP地址

NETMASK=255.255.255.0  子网掩码

NETWORK=192.168.1.0     指定网络,通过IP地址和子网掩码自动计算得到

GATEWAY=192.168.1.1     网关地址

BROADCAST=192.168.1.255 广播地址,通过IP地址和子网掩码自动计算得到

ONBOOT=[yes|no]             引导时是否激活设备

USERCTL=[yes|no]           非ROOT用户是否可以控制该设备

BOOTPROTO=[none|static|bootp|dhcp]    引导时不使用协议|静态分配|BOOTP协议|dhcp协议

HWADDR=00:13:D3:27:9F:80   MAC地址

NAME=eth0 名称

    另:修改ip、网关、广播地址规则参考:http://blog.csdn.net/iycao/article/details/23671557,

      BROADCAST 的IP值要和VMNET8中的ip保持一致且最后一位必须为255

      IPADDR的IP值要和VMNET8中的ip保持一致且最后一位必须为1~255的任意值

      GETWAY的IP值要和VMNET8中的ip保持一致且最后一位为2

      eg:

         我本机的ip为192.168.78.1,那么正确的配置为:

         BROADCAST=192.168.78.255

         IPADDR=192.168.78.1

        GETWAY=192.168.78.2

3、经过以上设置,正常情况下是可以成功的,如果仍有问题,在文件/etc/rc.d/rc.local最后加入ifup eth0(/etc/rc.local脚本是在所有其它初始化脚本执行完毕后执行)。

4、重启电脑,OK。

其它网络控制命令:

ifdown eth0、ifconfig eth0 down  //关闭网络

ifup eth0、ifconfig eth0 up         //开启网络

  -------------------------------------------------------

设置DNS 配置文件位置/etc/resolv.conf

-------------------------------------------------------

service network start         //启动网络服务

service network stop         //停止网络服务

srvice network restart       //重启网络服务

service network status      //查看网络服务状态

---------------------------------------------------------------------------------------------------

Linux的网卡由eth0变成了eth1,如何修复
 
使用wmware安装了linux,安装成功后,使用的网卡是eth0,没有eth1。但是用过一段时间后,不知道为什么eth0无法使用,系统却自动生成了eth1网卡,这可以使用ifconfig命令看的到。
 
[user@localhost ~]$ ifconfig
eth1      Link encap:Ethernet  HWaddr 00:0C:29:A9:22:9D  
          inet addr:192.168.1.108  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fea9:229d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:313 errors:0 dropped:0 overruns:0 frame:0
          TX packets:182 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:67356 (65.7 KiB)  TX bytes:26612 (25.9 KiB)
          Interrupt:19 Base address:0x2000 
 
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:16436  Metric:1
          RX packets:1788 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1788 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:89560 (87.4 KiB)  TX bytes:89560 (87.4 KiB)
 
使用service network restart指令来重新启动网络服务时,会看到有eth0网卡不存在的提示。
 
经过百度,了解了一些信息,特此记录在此,以备忘。
 
为什么eth0会变成eth1?
 
很多Linux distribution使用udev动态管理设备文件,并根据设备的信息对其进行持久化命名。udev会在系统引导的过程中识别网卡,将mac地址和网卡名称对应起来记录在udev的规则脚本中。而对于新的虚拟机,VMware会自动为虚拟机的网卡生成MAC地址,当你克隆或者重装虚拟机软件时,由于你使用的是以前系统虚拟硬盘的信息,而该系统中已经有eth0的信息,对于这个新的网卡,udev会自动将其命名为eth1(累加的原则),所以在你的系统启动后,你使用ifconfig看到的网卡名为eth1。
 
如何恢复到eth0?
 
在fedora中,udev记录网络规则的脚本为:/etc/udev/rules.d/70-persistent-net.rules
 
[user@localhost ~]$ vi /etc/udev/rules.d/70-persistent-net.rules
 
# This file was automatically generated by the /lib/udev/write_net_rules
# program run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single line.
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:5a:6c:73", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a9:22:9d", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
 
打开该文件,这时你会发现,里面有eth0,eth1两个网卡的信息,但实际上你ifconfig时只能发现eth1一个网卡的信息,这时因为eth0根本就不存在。
 
将其中eth0的信息删掉,并将eth1信息中的设备名改为eth0,重启系统,你看到的网卡就是eth0了,或者删掉其中所有的信息重启系统udev会帮你发现新的设备的。
 
另外还有一个启动脚本文件/etc/sysconfig/network-scripts/ifcfg-eth0,该文件中的mac地址为原来eth0网卡的物理地址,而虚拟机为eth1分配新的物理地址,故启动脚本中的信息与实际信息时不匹配的,将MAC的地址信息修改为70-persistent-net.rules中的eth1的MAC地址,再次重启网络,就完全恢复到以前eth0网卡的状态了(如果不行,就reboot系统后再重启网络即可解决)。
转自:http://blog.csdn.net/eazycode/article/details/42394659,感谢分享。

Centos下找不到eth0设备的解决方法的更多相关文章

  1. ubuntu16 升级后找不到 eth0 网卡 的解决方法

    ubuntu16 升级后找不到 eth0 网卡 的解决方法 今天在VPS上一时手痒,执行了升级命令 apt-get update 更新软件包索引,源 apt-get upgrade 更新软件包 apt ...

  2. Centos下忘记mysql的root密码的解决方法

    Centos下忘记mysql的root密码的解决方法 一:(停掉正在运行的mysql) [root@NetDakVPS ~]# service mysql stop 二:使用 “--skip-gran ...

  3. centos下MySQL Workbench连接时崩溃的解决方法

    在centos6.5中使用MySQL Workbench 6.3.8链接数据库崩溃,如果是在终端使用命令“mysql-workbench”打开的话会有如下错误提示: /usr/libexec/mysq ...

  4. 【亲测】<g++/gcc>CentOS下g++: command not found问题的解决(c++环境安装)

    CentOS下g++: command not found问题的解决 2017年02月27日 18:09:06 阅读数:5174 标签: centosgcc 更多 个人分类: 问题分析   版权声明: ...

  5. Eclipse笔记-sun.misc.BASE64Encoder找不到jar包的解决方法

    从SVN检出新项目,在Eclipse中报错如下: 转: Eclipse笔记-sun.misc.BASE64Encoder找不到jar包的解决方法 2018-01-04 00:36:20 雨临Lewis ...

  6. Ubuntu中找不到pip3命令的解决方法

    Ubuntu中找不到pip3命令的解决方法 Ubuntu 有 python2 和 python3. 今天使用 Ubuntu 中的 python3 时,想要安装第三方库却发现 pip 指向的是 pyth ...

  7. Mac下 eclipse target runtime com.genuitec.runtime 解决方法

    Mac下 eclipse target runtime com.genuitec.runtime 解决方法 解决步骤如下: 首先是找到工程项目一个名叫.settings的文件夹,里面有个叫 org.e ...

  8. 排错-windows平台下访问oracle em出现空白的解决方法

    排错-windows平台下访问oracle em出现空白的解决方法 by:授客 QQ:1033553122 问题描述 IE浏览器本地访问oem,出现空白页面,就左上角有一行字符 http://loca ...

  9. springboot打包成jar包后找不到xml,找不到主类的解决方法

    springboot打包成jar包后找不到xml,找不到主类的解决方法 请首先保证你的项目能正常运行(即不打包的时候运行无误),我们在打包时经常遇到如下问题: springboot打包成jar包后找不 ...

随机推荐

  1. RedisTemplate访问Redis数据结构

    https://www.jianshu.com/p/7bf5dc61ca06 Redis 数据结构简介 Redis 可以存储键与5种不同数据结构类型之间的映射,这5种数据结构类型分别为String(字 ...

  2. java中数组以及集合

    java中数组: 数组在Java里是一种特殊类型,有别于普通的“类的实例”的对象.但实际数组也是一种对象类型,int[]a = new int[5]  a是在java栈中分配的引用变量,类型是int[ ...

  3. sparkSQL实战详解

    摘要   如果要想真正的掌握sparkSQL编程,首先要对sparkSQL的整体框架以及sparkSQL到底能帮助我们解决什么问题有一个整体的认识,然后就是对各个层级关系有一个清晰的认识后,才能真正的 ...

  4. JAVA面试题整理(1)-基础

    1.List 和 Set 的区别  共同点:它们都是Collection的子接口 区别: List:这个接口能够精准的记录每一个元素的插入位置(换句话说就是这个接口内容所有元素是按照顺序去保存的),使 ...

  5. Flutter中集成Font Awesome

    1.添加引用 在 pubspec.yaml文件中,加入 font awesome的引用 dependencies: flutter: sdk: flutter # The following adds ...

  6. [CF1051F]The Shortest Statement

    题目大意:给定一张$n$个点$m$条有权边的无向联通图,$q$次询问两点间的最短路 $n\le100000$,$m\le100000$,$1\le100000$,$m$-$n\le20$. 首先看到$ ...

  7. NOIP2014 T4 子矩阵 dfs+dp

    最近在狂补题啊QAQ... 打算先把NOIP的干掉吧... 点我看题 链接还是放洛谷的了... 题意:给一个n*m的矩阵,在这个矩阵里选 r 行 c 列,然后这 r 行 c 列所相交的格子为新矩阵的, ...

  8. Java常用的几种线程池

    常用的几种线程池 5.1 newCachedThreadPool 创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程. 这种类型的线程池特点是: 工作线程的创 ...

  9. 第一个版本库 Repository

    Git安装 Windows系统 Git 为 Windows 系统提供了简易的 .exe 安装包, 直接下载并安装就可以了(点这里->):https://git-scm.com/download/ ...

  10. python 使用set对list去重,并保持list原来顺序

    list_one=re.findall(r"^\s{0}[A-Za-z]*\b", txt,re.M) #匹配一级目录 addr_to = list(set(list_one))a ...