热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CentOS安装网卡驱动教程

前言前几个星期,自己攒了一台电脑,主板是Gigabit的Z77-DS3H,系统装了CentOS6.4。郁闷的是,这个系统不支持主板自带点的网卡。没办法,自己一个人折腾了好久,终于被我解决了,在此过程中各种碰壁,故特此记录。正文问题出现如图:这是我刚安装好系统之后的截图。在终端可以发现只有一个lo连
前言

前几个星期,自己攒了一台电脑,主板是Gigabit的Z77-DS3H,系统装了CentOS 6.4。郁闷的是,这个系统不支持主板自带点的网卡。没办法,自己一个人折腾了好久,终于被我解决了,在此过程中各种碰壁,故特此记录。

正文

问题出现

如图:

这是我刚安装好系统之后的截图。在终端可以发现只有一个lo连接而没有eth0,而在右上角,联网图标下面的提示上显示了“No network device availabal”。由此判断,是系统没有合适的驱动所致。

查看设备

使用以下命令查看网卡信息:

lspci | grep -i eth

 显示的结果为:

02:00.0 Ethernet controller: Atheros Communications Inc. AR8161 Gigabit Ethernet (rev 10)

在CentOS论坛上找了一下,发现了一则帖子。在#6的回复里面,我找到了可行的解决方案。

 之前试过了无数次,简直是个噩梦。。。

在那则回复里面,作者要我们去这里下载驱动。

我这里直接给出文件的链接,大家可以用wget或者其他下载工具直接下载:

http://fichiers.touslesdrivers.com/34178/alx-linux-v2.0.0.6.rar

下载下来的文件名是alx-linux-v2.0.0.6.rar

根据您在看这则文章时使用的操作系统:

Windows系统

建议安装7Z这个压缩软件,他可以将文件夹或多个文件打包并压缩为tar.gz/bz2格式,(当然也支持rar格式,而且和rar不同,他是免费软件。。。这里当成是对7Z的推广好了)当然也支持将tar.gz/bz2等文件解压缩。

这样一来,如果你下载的是rar文件,也可以将其解压后重新压缩为tar格式,然后用U盘之类的存储器转移到Linux下进行编译安装。不然,Linux一般是解压不了rar文件的,但是网上大部分的压缩文件都是rar格式了。

Linux系统

可能是有其他网卡,所以还能联网,还能看到这篇文章。或者就是两台Linux主机,用其中一台可以上网的来下载。

下载到tar之类的格式的不用担心,下载到rar格式的,用yum搜索一下rar好了。

啊,悲剧了,下载来的文件是rar格式的。我是在windows下下载的,所以用7Z解压再压缩,然后用手机转移过去(因为没有U盘Orz...)

  编译和安装

编译前提

你要安装了kernel-headers 和 kernel-devel。当然,还有gcc。

不过悲剧的是,CentOS默认是没有安装好gcc的。如果你不确定是否有安装gcc的话,请直接在终端里输入gcc,如果没有安装,就会提示bash: gcc: comman not found。

要是真的悲剧了,gcc没有安装怎么办?我是插入一张bin DVD,然后更改了yum的配置文件,让yum的软件源变成本地的光盘。这个方法有机会以后再介绍。

要安装kernel-headers 和 kernel-devel,你需要以下两条命令:

sudo yum install kernel-headers 2 sudo yum install kernel-devel 

 以上两个只需要安装一次,以后编译其他驱动就不用再安装了。

编译

将下载下来的压缩包解压后,出现一个目录(alx-linux-v2.0.0.6),我们进入这个目录之后,直接执行make就可以了。

之后,我们再进入当前目录的src目录,用ls可以发现,有一个叫做alx.ko的文件,这个就是我们要用的网卡驱动了。

安装驱动

执行一下pwd,我们应该是在xxxx/alx-linux-v2.0.0.6/src目录下。接下来,我们只要再把那个alx.ko复制到指定目录下就可以了。

这里直接上图:

只要按照上面显示的步骤来,马上就会有效果了——请看此图右上角,从原来的红叉叉变成绿圈圈了。

命令:

 sudo mkdir /lib/modules/$(uname -r)/kernrl/net/wireled        #这里的$(uname -r)会替换成系统当前的版本号 2 sudo cp alx.ko /lib/modules/$(uname -r)/kernrl/net/wireled    #将驱动文件拷贝到指定位置 3 sudo depmod -a                                                #检测模块的相依性,lib下驱动文件改变后最好执行一下 4 sudo modprobe alx                                             #在默认位置上加载了alx.ko

至于lsmod | grep alx是为了查看该驱动是加载成功。如果该驱动没有被加载的话,那么就什么都不显示。

在上图,执行modprobe之前和之后有明显不同。

显示:alx             90654   0  说明该驱动成功被载入了。

重启之后,该驱动也还在。所以,不用像那个论坛里那个人写的那么麻烦了。

解决问题

好了,用不管是用ifconfig看,还是用右上角的图标看,问题似乎都完全解决了。接下来,就随你怎么配置网卡了。我是配置了拨号连接。

后记
  •  如果载入驱动成功后,使用ifconfig还无法看到eth0的话,使用:
  •  ifconfig -a                #这样就可以发现eth0了(eth0是第一个,如果你有其他网卡,就会有eth1,2,3...) 2 sudo ifconfig eth0 up      #根据上面看到的替换eth0,一般是eth0

  • 要想编译驱动之类的东西,必须先安装kernel-headers 和 kernel-devel

  • 查看设备信息,使用:
    lspci #加上 -v 选项更完整


推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 本文介绍了使用CentOS7.0 U盘刻录工具进行安装的详细步骤,包括使用USBWriter工具刻录ISO文件到USB驱动器、格式化USB磁盘、设置启动顺序等。通过本文的指导,用户可以轻松地使用U盘安装CentOS7.0操作系统。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • Python语法上的区别及注意事项
    本文介绍了Python2x和Python3x在语法上的区别,包括print语句的变化、除法运算结果的不同、raw_input函数的替代、class写法的变化等。同时还介绍了Python脚本的解释程序的指定方法,以及在不同版本的Python中如何执行脚本。对于想要学习Python的人来说,本文提供了一些注意事项和技巧。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
author-avatar
mobiledu2502925915
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有