弹出界面eth0: 错误:没有找到合适的设备:没有找到可用于链接’System eth0’的设备

解决Linux网卡配置错误
本文介绍了在Linux系统中遇到的网卡配置错误问题及解决方法。主要问题为重启网络服务时出现找不到合适设备的错误提示。通过检查系统是否识别网卡、查看MAC地址信息、删除多余MAC地址并修改配置文件等步骤,最终成功解决问题。

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。
问题描述地址:http://blog.csdn.net/apollon_krj/article/details/56839291
问题解决地址:http://wenzhongxiang.blog.51cto.com/6370734/1433858

问题描述:

在虚拟机中该IP为静态IP,service network restart时,出现了“Bringing up interface eth0: Device eth0 does not seem to be present, delaying initialization.”的错误提示。即标题所描述的没有合适的设备。分析原因:由于这台虚拟机是直接拷贝现有系统的磁盘创建的(克隆的情况也一样),所以在创建时将原有的网卡地址也拷贝了过来,但是实际分配的网卡地址并不是拷贝过来的网卡网卡地址,所以发生了网卡地址冲突。如下所示:
这里写图片描述

问题解决:

弹出界面eth0: 错误:没有找到合适的设备:没有找到可用于链接’System eth0’的设备

今天在使用putty连接linux6.0系统远程的时候,重启网卡的时候发现此报错:

报错截图如下:
这里写图片描述

排错步骤如下:

1:查看系统是否识别相应网卡(发现没有eth0网卡存在):

这里写图片描述

根据显示信息我们可以初步判定系统网卡信息有问题。

2:查看当前MAC地址相关信息:

这里写图片描述

发现多出一块eth1网卡信息。

3:删除多余mac地址信息,并修改网卡配置文件:

/etc/udev/rules.d/70-persistent-net.rules 文件下记录着网卡对应mac地址信息:

这里写图片描述

修改网卡配置文件并保存。
网卡配置文件位置:/etc/sysconfig/network-scripts/ifcfg-eth0

4:重启网卡查看是否配置正确,发现可以正常启动:

wKiom1O0ytaQs7vQAADJDYHp72A723.jpg

查看相应网卡信息(如何发现网卡IP地址正常但显示为eth1,建议重启后生效):

wKioL1O0yqeAVWrHAAITkKfzGHc072.jpg

成功解决问题!嘿嘿!
转载心得:感谢原文作者的帮助!

### 查看设备MAC地址的方法 #### Windows 系统中的方法 在 Windows 系统中,可以通过命令提示符、网络和共享中心或者控制面板来查看 MAC 地址。以下是具体的操作方式: 1. **通过命令提示符** 使用快捷键 `Win + R` 打开运行对话框,输入 `cmd` 并按下回车键启动命令提示符。接着,在命令行窗口中输入以下命令并按 Enter 键执行: ```bash ipconfig /all ``` 显示的结果中会列出所有网络适配器的信息,找到目标适配器(例如以太网或无线局域网),其对应的物理地址(Physical Address)即为 MAC 地址[^4]。 2. **通过网络和共享中心** 鼠标右键单击屏幕右下角的网络图标,选择“打开网络和 Internet 置”。随后点击左侧菜单栏中的“网络和共享中心”,再点击当前连接的网络名称。最后,在弹出的状态窗口中点击“详细信息”按钮,即可在新窗口中看到物理地址字段及其值。 3. **通过控制面板** 同样可以借助控制面板完成此操作。先按下组合键 `Win + R` 输入 `control` 来访问控制面板界面;之后依次导航至“网络和 Internet -> 网络和共享中心”。选中当前活动的网络链接后点击右侧的详情选项卡,同样能够发现所需的硬件标识码——也就是常说的 MAC 地址。 #### Android 设备上的方法 对于基于 Android 的移动终端而言,则存在更多简便途径可以直接读取本机所绑定之唯一身份编码—MAC 地址: 1. **利用内置功能查询** 大多数品牌型号都允许用户经由定应用内部路径定位到 WLAN MAC 地址所在位置。比如针对华为以及其他主流品牌的安卓机型来说,只需按照如下顺序逐步深入探索:“置-> 关于手机 -> 状态信息 -> WLAN MAC 地址”就能轻松获知相关信息[^2]。 2. **采用 ADB 命令调试模式提取数据** 如果开发者具备一定技术背景的话还可以考虑运用高级开发桥接工具(ADB),配合特定脚本函数调用来修改甚至重新定义指定接口层面上的新属性值。下面给出了一段 Java 实现代码片段作为参考案例展示如何动态调整 Ethernet 接口关联参数包括但不限于重置默认出厂预值等功能扩展可能性[^5]: ```java static private void setNetMac(String str){ try{ executeCMD("netcfg eth0 down"); executeCMD("netcfg eth0 hwaddr " + str); executeCMD("netcfg eth0 up"); } catch (Exception e){ e.printStackTrace(); } } static public boolean executeCMD(String cmd){ try { Runtime runtime = Runtime.getRuntime(); Process proc = runtime.exec(cmd); proc.waitFor(); byte[] bytes = new byte[256]; int size = proc.getErrorStream().read(bytes); String stringLog = new String(bytes, 0, size); return true; } catch (Exception e) { e.printStackTrace(); } return false; } ``` 3. **使用 Linux 类型指令解析法** 当然如果只是单纯想了解某款支持 POSIX 标准环境下的智能装置实际运作状况则推荐尝试直接下发标准 UNIX Shell Scripting Language Command Line Utilities Like IfConfig Or Cat File System Path To Retrieve Desired Information As Follows: ```bash ifconfig wlan0 | grep 'HWaddr' # OR Alternatively For More Modern Systems Using IP Utility Instead Of Deprecated IFCONFIG Binary Executable Files Which May Not Be Available On All Distributions Anymore Depending Upon Package Manager Configurations Etcetera... ip link show dev wlan0 # Another Approach Would Involve Reading From Sysfs Virtual Directory Structures Where Network Interface Parameters Are Exposed Through Regular Text Files That Can Easily Be Accessed Via Simple Commands Such As Below Example Demonstrates How One Could Obtain The Same Result By Looking Inside Specific Subdirectories Underneath /Sys/Class/Net/ cat /sys/class/net/wlan0/address ``` 以上便是适用于不同平台条件下获取各自对应实体机器节点间通信所需基础识别标志之一 — Media Access Control Identifier Number 的若干常见技巧总结说明文档内容概述完毕!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值