问题:Linux的内核与当前主板网卡不兼容。
映泰A780G偏偏集成该死的RTL8168网卡模块。
1,输入命令mii-tool 如果显示有no support的字样,可以肯定是网卡没有驱动了。
也可以通过dmesg | grep eth 判断是否是网卡没有驱动导致的。
2,检查主板型号,并在主板的官方网站上找到该板集成的网卡模块。(与Linux不兼容的多是RTL8111系列或者RTL8168)
3,节省时间,直接去网卡模块提供商的官网http://www.realtek.com.tw/ ,搜索你的网卡型号。(注意选择是unix/linux)
4,检查系统内核版本:uname -r (我的是2.6.18-92.e15)
5,安装主要的编译环境包,我是通过挂载光盘获得rpm的包。(通过光盘安装的好处是版本保持一致)
安装关于gcc的所有包(用不到的也装)---------------> rpm -ivh gcc* --nodeps
安装kernel-headrs --------------------------------------> rpm -ivh kernel-headers --nodeps
安装kernel-devel ----------------------------------------> rpm -ivh kernel-devel --nodeps
kernel-devel会在你的/usr/src目录下生成一个kernels文件夹,不用管他。直接进入驱动目录执行第6步。
6.在Realtek的官网上找到了驱动,下载后,进入网卡文件的目录执行(根据网卡的安装说明)命令:
编译之前先查找并删除系统自带的网卡驱动模块,以防会有驱动冲突问题。(我的系统自带的是r8169)
#lsmod | grep r81*
删掉显示的驱动模块
#rmmod r8169
编译安装:
可能的错误与解决方法:
如果报“build”目录不存在,没有r8168.ko文件等,基本都是因为缺少编译环境造成的。
安装gcc,kernel.devel ,kernel.headers这样的类包,一般就可以解决问题了。