安装linux操作系统后发现没有网卡驱动,表现为

system → Administration → Network下Hardware列表为空。
 以下为安装编译网卡驱动的过程,本人是菜鸟,以下是我从网上找的资料进行整理,并实际操作的过程,仅供借鉴。

 一.检测linux系统内核版本和网卡类型,相关命令如下:

uname -r                    查看linux内核版本 (uname -a 可显示所有信息)
lsmod                        设备加载情况 
ls /usr/share/hwdata   查看硬件设备 
lspci                          查看pci网卡设备 ethernet controller  厂商和型号,modprobe ****        ****为网卡型号,例如  modprobe RTL8101E ,如果出错,说明模块不存在,该型号不识别
           
我在这一步时查找不到网卡型号,无奈只能由同时采购的其他相同型号预装win7的电脑下查看网卡型号,是个笨办法,嘿嘿……
找到网卡型号后就到驱动之家下载了相应网卡的linux驱动,这些需要根据自己的实际情况下载,不多说了,重点是后面。
 
二.下载网卡驱动

Intel_e1000e-1.9.5.zip 为我下载的所需的网卡驱动,这个在linux下需自己编译.

三.安装网卡驱动

1.检测编译需要用到内核的源代码包和编译程序gcc。所以如果没有的话,要先装。
 
 [root@localhost ~]# rpm -qa|grep kernel
 kernel-xen-2.6.18-8.el5 
 kernel-xen-devel-2.6.18-8.el5 
 kernel-headers-2.6.18-8.el5 
   
 [root@localhost ~]# rpm -qa|grep gcc 
 gcc-c++-4.1.1-52.el5 
 libgcc-4.1.1-52.el5 
 gcc-4.1.1-52.el5 
 gcc-gfortran-4.1.1-52.el5 
  
如果缺少kernel-xen-devel-2.6.18-8.el5,可以去安装光盘的/Server/目录下,找到kernel-xen-devel-2.6.18-8.el5.i686.rpm 文件安装。
 我很幸运,安装的系统中已经安装好了,呵呵。
2.编译安装网卡驱动
 将下载的网卡驱动放到/home目录下,解压Intel_e1000e-1.9.5.zip包
unzip Intel_e1000e-1.9.5.zip

进入解压后的目录并编译安装,命令如下:
# cd e1000e-1.9.5/src
 # make install

一般情况下解压的目录中会有一个readme文件,里面详细写明了网卡安装的步骤,强烈建议先看readme,安装readme中步骤操作一般不会出现问题。

安装好的文件一般位于如下目录中(kernel version以我的为例)/lib/modules/2.6.18-194.el5xen/kernel/drivers/net/e1000e/e1000e.ko

insmod e1000e.ko

安装完毕,成功后系统提示网络已连接,说明网卡驱动已经装好,也可以通过检查system → Administration → Network下Hardware列表。

备注(以下为网上资料,未实际验证):
 
如果操作系统启用了支持XEN的内核,“硬件”选项卡里会出现两个网卡,eth0和peth0。
 
eth0就是映射到peth0的;系统还会自动生成一个xenbr0的网卡;这个网卡是为guestOS做桥接的;vif0.0是指Domain0的第一块网;vif0.1指Domain0的第二块网卡;
 
如果不准备使用XEN虚拟机;可以在启动时选择没有xen的内核,就不会生成这些额外的网卡了:
 
步骤一:关闭xend进程,使之不随系统自启动。
1.使用ntsysv命令进入服务管理,关闭xend服务(空格键是选中或者取消)
 
2.使用chkconfig命令:

[root@localhost ~]# chkconfig --level 1 xend off
  
 [root@localhost ~]# chkconfig --level 2 xend off
  
 [root@localhost ~]# chkconfig --level 3 xend off
  
 [root@localhost ~]# chkconfig --level 4 xend off
  
 [root@localhost ~]# chkconfig --level 5 xend off
  
 [root@localhost ~]# chkconfig --level 6 xend off

检查xend是否都是关闭状态:
[root@localhost ~]# chkconfig --list |grep xend
 xend            0:关闭  1:关闭  2:关闭  3:关闭  4:关闭  5:关闭  6:关闭
xendomains      0:关闭  1:关闭  2:关闭  3:启用  4:启用  5:启用  6:关闭
 修改完毕重启系统。

步骤二:进入系统->管理->网络 ,已经能看到网卡,可以配置IP和DNS。
 
然后修改绑定MAC地址:
1.网卡相关的TCP/IP网络配置文件是:/etc/sysconfig/network-scripts/ifcfg-ethx。其中x从0开始,第一个以太网配置文件即:/etc/sysconfig/network-scripts/ifcfg-eth0。使用vi编辑器修改这个文件,也可以修改网卡MAC地址。
 把 HWADDR=ff:ff:ff:ff:ff
改为 MACADDR=00:1F:D0:64:9B:B7  MACADDR后面是自己的mac地址

2. /etc/sysconfig/networking/profiles/default/ ifcfg-eth0
把 HWADDR=ff:ff:ff:ff:ff
改为 MACADDR=00:1F:D0:64:9B:B7  MACADDR后面是自己的mac地址

重启生效。

linux下安装编译网卡驱动的方法的更多相关文章

  1. 在linux下安装某个硬件驱动到方法

    东西很简单,几句话就能说清除. 使用lsipc检查你需要安装到硬件,记住硬件到关键型号,去搜索引擎搜索linux下的驱动文件 对文件进行安装简单的解压后基本上是 ./configure &&a ...

  2. FFmpeg在Linux下安装编译过程

    转载请把头部出处链接和尾部二维码一起转载,本文出自:http://blog.csdn.net/hejjunlin/article/details/52402759 今天介绍下FFmpeg在Linux下 ...

  3. linux 下安装编译配置 QT

    注: 1,自己 make qt-everywhere-opensource-src s时,在./configure前主动装好以下3个 sudo apt-get install libX11-dev l ...

  4. linux下安装mysql的三种方法:rpm包安装、yum安装、源码包安装

    1 安装MySQL数据库服务器安装方法一://查询系统自带的数据库rpm -qa | grep -i mysql //卸载查询到的所有mysqlrpm -e --nodeps mysql-libs-5 ...

  5. linux下安装编译php的curl扩展

    curl扩展的位置(需要编译的版本)/root/install/php-5.5.24/ext/curl 1.进入对应的扩展目录 # cd /root/install/php-5.5.24/ext/cu ...

  6. linux下安装编译为安装的php扩展

    1.进入php源码包中,找到需要安装的扩展模块目录.cd /root/php-5.6.26/ext/mbstring 2.在扩展模块目录,运行phpize程序,(作用是检测 php 的内核版本,并为扩 ...

  7. Linux下安装nvidia显卡驱动

    部署环境 操作系统:Centos 7.4 在线源:Centos 7.4镜像源 安装操作 1.安装系统插件 [root@localhost ~]# yum -y install gcc kernel-d ...

  8. Ubuntu下安装程序的三种方法(转)

    引言 在Ubuntu当中,安装应用程序我所知道的有三种方法,分别是apt-get,dpkg安装deb和make install安装源码包三种.下面针对每一种方法各举例来说明. 一.apt-get方法 ...

  9. 在Linux下安装PHP过程中,编译时出现错误的解决办法

    在Linux下安装PHP过程中,编译时出现configure: error: libjpeg.(a|so) not found 错误的解决办法 configure: error: libjpeg.(a ...

随机推荐

  1. Mysql中查看每个IP的连接数

    ) as ip , count(*) from information_schema.processlist group by ip;

  2. SVD分解的c++代码(Eigen 库)

    使用Eigen 库:进行svd分解,形如 A = U * S * VT. JacobiSVD<MatrixXd> svd(J, ComputeThinU | ComputeThinV); ...

  3. Python:简述 线程、进程和协程

    Python线程 定义:Threading用于提供线程相关的操作,线程是应用程序中工作的最小单元. #!/usr/bin/env python # -*- coding:utf-8 -*- impor ...

  4. [Spring Data Repositories]学习笔记--使用现有的repository

    以下内容是在学习Spring-Data-mongoDB中的Spring Data Repositories时做的一些笔记.备忘! 感觉学习还是看官方的资料比较透彻一些. Spring Data Rep ...

  5. .NET调用JAVA的WebService方法

    调用WebService,最简单的办法当然是直接添加WEB引用,然后自动产生代理类,但是在调用JAVA的WebService时并没有这么简单,特别是对于SoapHeader的处理,在网上也有相关资料, ...

  6. Springboot 热部署中存在冲突的问题

    SpringBoot热部署有2中: 1.使用 Spring Loaded 2.使用 spring-boot-devtools 具体怎么用.自己百度! 在使用第一种时候,整合SpringBoot和通用M ...

  7. C语言结构体数组内带字符数组初始化和赋值

    1.首先定义结构体数组: typedef struct BleAndTspRmtCmd{ char terminal[3]; char note[3]; char rmtCmd[10]; char c ...

  8. JavaScript函数setInterval()和setTimeout()正确的写法

    一.常规写法 1.1 不传参数 function a (x, y) { var i = 0; var b = function(){ console.log((x * y) + (i++)); } r ...

  9. CSS标签内多余内容隐藏

    CSS: <style> .mazey{width:100px;} .nowrap{overflow:hidden;text-overflow:ellipsis;white-space:n ...

  10. Android系统移植与调试之------->如何修改Android手机NFC模块,使黑屏时候能够使用NFC

    我们都知道在不修改源代码的情况下,只能是解锁之后才能使用NFC功能.而在锁屏和黑屏2个状态下是没办法用NFC的,但是最近有个客户要求手机在黑屏状态下能够使用NFC,因此我们需要去修改Android源代 ...