前言
最近,一台机器从FreeBSD换为CentOS,一路安装顺利。完事之后发现,网卡没有启用,dmesg | grep eth 命令确定网卡没有驱动导致的。于是开始了一路艰辛的安装过程。
安装过程
1.先找驱动,主板是华擎的ConRoe945G-DVI,去了华擎的官网找到这块主板。伤心的发现其官网上并没有linux的网卡驱动下载。但是找到网卡是Realtek RTL8111B型号的。
2.在Realtek的官网上找到了驱动,并下载之,进入网卡文件的目录执行(根据网卡的安装说明)命令:
# make clean modules
# make install
# depmod -a
# insmod ./src/r8168.ko
出错,提示kernel-devel没有安装。
3.开始安装kernel-devel,挂载上CentOS的安装光盘,用rpm -iv /mnt/cdrom/CentOS/kernel-devel*.rpm安装,继续安装驱动。提示少kernel-xen
4.安装kernel-xen用rpm -iv /mnt/cdrom/CentOS/kernel-xen*.rpm安装,继续安装发现少gcc
5.于是继续安装gcc,怕麻烦通过yum命令安装gcc
编辑/etc/yum.repos.d/iso.repo文件,添加本地路径也就是/mnt/cdrom/目录
然后开始使用命令
yum --disablerepo=* --enablerepo=c5-media install gcc
将提示所需的gcc一个一个都安装了。
最后在进行步骤2.完成安装services network restart,可爱的网卡终于出现了!
步骤总结
1.通过dmesg | grep eth 判断是否是网卡没有驱动导致的。
2.找到对应的网卡驱动,准备安装
3.检查服务器是否有编译环境,也就是kernel-devel、gcc这些。如果没有安装之,具体可参考前端文字。默认centos安装的时候,并没有带上需要支持编译的源码包,需要自己用yum install命令同时安装:kernel、kernel-headers和kernel-devel。
4.执行下列命令:
tar vjxf r8168-8.003.00.tar.bz2
cd r8168-8.003.00
make clean modules
make install
depmod -a
insmod ./src/r8168.ko
5.安装完成。
其他情况
在网卡硬件没有问题的情况下,如果没有安装对应的正确确定导致网卡仍然不能正常使用,请通过以下方式进行重新安装。
1.删除原有网卡设备。
2.删除原有的安装程序:rmmod r8168.ko
3.然后用命令:find / -name r8168.ko,找到并删除该模块。