linux 3.10 网卡驱动程序示例,Centos7安装万兆网卡驱动
一、组网图
不涉及
二、问题描述
DELL服务器安装完Centos7后发现无法识别到10G的万兆网卡
1、下图为实际插卡槽位
2、在以下目录没有查看到对应槽位的网口信息
三、过程分析
初步定位为没有安装对应的网卡驱动。
四、解决方法
1、搜索需要下载驱动对应的网卡型号
[root@localhost ~]# lspci|grep10G
05:00.0 Ethernet controller: Intel Corporation Ethernet 10G 2P X520 Adapter (rev 01)
05:00.1 Ethernet controller: Intel Corporation Ethernet 10G 2P X520 Adapter (rev 01)
[root@localhost ~]#
2、官网搜索对应的驱动程序并下载到本地
3、该驱动需要安装kernel-headers,gcc,kernel-devel依赖包,可以先使用命令查看是否安装,若没有,则需要挂载ISO镜像,配置yum源,安装依赖包。若存在,可跳过步骤4-8,直接执行步骤9进行驱动安装。
[root@localhost ~]# rpm -qa |grep kernel* gcc*
gcc-4.8.2-16.el7.x86_64
kernel-tools-libs-3.10.0-123.el7.x86_64
grep-2.16-1.el7.x86_64
kernel-3.10.0-123.el7.x86_64
kernel-tools-3.10.0-123.el7.x86_64
kernel-headers-3.10.0-123.el7.x86_64
kernel-devel-3.10.0-123.el7.x86_64
4、可将对应操作系统的ISO通过光盘,U盘,或者直接上传到对应服务器的方式进行挂载,以下步骤以直接上传ISO镜像文件到服务器为例,其他方式挂载步骤与此类似。
先将ISO文件上传到服务器。
注意:该ISO镜像一定要是对应安装操作系统的镜像源,否则安装的kernel-headers和kernel-devel的版本与实际的kernel版本不一致,会导致后续网卡驱动程序安装失败的问题。实际安装的kernel版本可用uname –a查看。
5、使用mount命令将镜像挂载到/mnt目录,命令执行完后可用df –h命令查看是否挂载成功。
[root@localhost ISO]# mount CentOS-7.0-1406-x86_64-DVD.iso /mnt
mount: /dev/loop0 写保护,将以只读方式挂载
[root@localhost ISO]# df-h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 50G 12G 39G 23% /
devtmpfs 24G 0 24G 0% /dev
tmpfs 24G 80K 24G 1% /dev/shm
tmpfs 24G 9.6M 24G 1% /run
tmpfs 24G 0 24G 0% /sys/fs/cgroup
/dev/mapper/centos-home 1.8T 37M 1.8T 1% /home
/dev/sda1 497M 121M 377M 25% /boot
/dev/loop0 3.9G 3.9G 0 100% /mnt
[root@localhost ISO]#
6、配置yum源,进入/etc/yum.repos.d/目录,将原来的yum源配置文件保存一份,修改原来的配置文件,替换成以下标红内容。
[root@localhost ISO]# cd/etc/yum.repos.d/
[root@localhost yum.repos.d]# cp CentOS-Base.repo BASE.BAK
[root@localhost yum.repos.d]# vi CentOS-Base.repo
[base]
name=CentOS-$releasever- Base
baseurl=file:///mnt
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
7、清除yum缓存,并重新加载
[root@localhost yum.repos.d]# yum clean all
已加载插件:fastestmirror, langpacks
正在清理软件源: base
Cleaning up everything
Cleaning up list of fastest mirrors
[root@localhost yum.repos.d]#yum list
已加载插件:fastestmirror, langpacks
base | 3.6 kB 00:00:00
(1/2): base/group_gz | 157 kB 00:00:00
(2/2): base/primary_db | 2.7 MB 00:00:00
Determining fastest mirrors
已安装的软件包
GConf2.x86_64 3.2.6-8.el7 @anaconda
…#省略剩余安装包
8、执行命令安装依赖包
[root@localhost yum.repos.d]# yum install -y kernel-devel kernel-headers gcc
9、通过xftp等工具将网卡驱动上传到服务器。
10、使用命令解压驱动压缩包到当前目录
[root@localhost ~]#tar -zxvf ixgbe-5.6.1.tar.gz
ixgbe-5.6.1/
ixgbe-5.6.1/src/
…省略
ixgbe-5.6.1/ixgbe.7
ixgbe-5.6.1/ixgbe.spec
ixgbe-5.6.1/SUMS
[root@localhost ~]#
11、解压后进入对应的/src目录进行安装,此时发现还是报以下错误。
root@localhost yum.repos.d]# cd /root/ixgbe-5.6.1/src/
[root@localhost src]# make install
common.mk:84: *** Kernel header files not in any of the expected locations.
common.mk:85: *** Install the appropriate kernel development package, e.g.
common.mk:86: *** kernel-devel, for building kernel modules and try again。 停止。
12、打开 common.mk 发现编译时需要 /usr/src/linux 目录,但是系统并没有此目录,手动创建 /usr/src/kernels/3.10.0-123.el7.x86_64/ 到 /usr/src/linux 的链接即可。
[root@localhost linux]# ln -s /usr/src/linux/3.10.0-123.el7.x86_64 /usr/src/linux/
注意:示例中标红的kernel版本号以实际安装的版本号为准
13、再次进入安装目录进行编译,安装成功
[root@localhost src]#make install
make[1]: 进入目录“/usr/src/kernels/3.10.0-123.el7.x86_64”
CC [M] /root/ixgbevf-4.6.1/src/ixgbevf_main.o
CC [M] /root/ixgbevf-4.6.1/src/ixgbevf_ethtool.o
CC [M] /root/ixgbevf-4.6.1/src/ixgbe_vf.o
CC [M] /root/ixgbevf-4.6.1/src/ixgbe_mbx.o
CC [M] /root/ixgbevf-4.6.1/src/kcompat.o
LD [M] /root/ixgbevf-4.6.1/src/ixgbevf.o
Building modules, stage 2.
MODPOST 1 modules
CC /root/ixgbevf-4.6.1/src/ixgbevf.mod.o
LD [M] /root/ixgbevf-4.6.1/src/ixgbevf.ko
make[1]: 离开目录“/usr/src/kernels/3.10.0-123.el7.x86_64”
Copying manpages...
Installing modules...
make[1]: 进入目录“/usr/src/kernels/3.10.0-123.el7.x86_64”
INSTALL /root/ixgbevf-4.6.1/src/ixgbevf.ko
Can't read private key
DEPMOD 3.10.0-123.el7.x86_64
make[1]: 离开目录“/usr/src/kernels/3.10.0-123.el7.x86_64”
Running depmod...
[root@localhost src]#
14、导入驱动模块
如果之前存在旧版本的网卡驱动模块,可以先移除,再重新导入新版本的模块
[root@localhost linux]#modprobe -r ixgbe #移除驱动模块
[root@localhost linux]#modprobe ixgbe #导入驱动模块
15、用命令可以查看到驱动模块已经成功导入
[root@localhost linux]#lsmod |grep ixgbe
ixgbe334497 0
vxlan 37584 1 ixgbe
dca 15130 2 igb,ixgbe
ptp 18933 3 igb,tg3,ixgbe
16、在/sys/class/net下已经能识别到对应的网口信息
[root@localhost linux]#ls/sys/class/net/
em1 em2 em3 em4 lo p5p1 p5p2 p5p3 p5p4 p6p1 p6p2
linux 3.10 网卡驱动程序示例,Centos7安装万兆网卡驱动相关推荐
- linux 3.10 网卡驱动程序示例,网卡驱动程序框架以及虚拟网卡驱动程序的实现
LINUX驱动程序分三大块:字符驱动程序.块设备驱动程序.网络驱动程序.其中网络驱动程序分为好多层协议层+与硬件相关的层.这篇主要介绍网络驱动中与硬件相关的层的框架:网卡驱动程序. 1.网卡驱动程序框 ...
- linux系统连接校园无线网卡,RedHat Linux系统能不能连接无线网 如何安装无线网卡驱动 - 驱动管家...
想要使用RedHat Linux系统实现无线上网,就要先安装无线网卡驱动,这是在任何一个操作系统中不变的真理.那么RedHat Linux系统如何安装无线网卡驱动呢? 输入命令lsusb,可以看到US ...
- Centos7 安装GPU驱动(rpm包方式安装) 亲测,出坑 NVIDIA-SMI has failed because it couldn’t communicate...
删除驱动 查看安装的nvidia模块命令 rpm -qa|grep -i nvid|sort 删除找到的模块 yum remove kmod-nvidia-* 一.查看支持CUDA的GPU列表 :ls ...
- centos7安装nvidia驱动与cuda
由于实验室之前的电脑系统崩了,在重装了系统之后自然需要安装cuda,下面是自己在安装cuda的时候遇到的一些问题以及解决方案. 0. 基本信息 显卡比较老,是GTX 1060,操作系统选择了CentO ...
- Linux 操作系统原理 — 网卡驱动程序初始化流程
目录 文章目录 目录 源码版本 1.内核启动流程 2.内核协议栈初始化流程 3.网卡驱动程序注册流程 4.网卡驱动程序初始化流程 net_device 结构体 net_device_ops 结构体 初 ...
- centos7 安装显卡驱动及cuda10.2
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 CentOS 7下安装显卡驱动 1. [操作系统](https://docs.nvidia.com/cuda/cuda ...
- 「OS」Centos7安装Nvidia驱动
驱动安装环境 船新的Centos7系统,未装任何东西 参考链接 CentOS集成GTX-1080Ti显卡搭建深度学习环境全过程 centos 7 安装NVIDIA显卡驱动 CentOS7安装Nvidi ...
- linux nvidia 361.run,Ubuntu 16.04安装nVidia驱动失败!
Ubuntu 16.04安装nVidia驱动失败! 发布时间:2016-09-16 10:24:00来源:红联作者:sutao80216 我的笔记本是I/N双显卡,CPU是i7,独显是nVidia G ...
- 双系统Linux(Ubuntu20.04)深度学习安装+cuda驱动+cuda+anaconda
文章可能排布不好 但请你耐心看完 一定对你有所帮助 感觉挺不容易的 所以有感写下了这篇博客 来帮助更多的小白 如有大神还望评论区指教,下面会写出一些我走过的坑,也许我解释不了为什么,但是我能提出解决方 ...
- centos7 安装sqlserver驱动以及扩展
安装sqlserver驱动 sudo su curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repo ...
最新文章
- Python是不是被严重高估了(转载)
- javascript常用方法函数收集
- mysql不停止重启服务器_不停止MySQL服务增加从库的两种方式
- 深入理解计算机操作系统(一)
- C语言嵌入式系统编程修炼之道——屏幕操作篇
- 2013计算机一级考试综合试题答案,2013全国计算机等级考试试题题库及答案.doc
- 编写一个求方程ax2 + bx + c = 0的根 的程序,用3个函数分别求当b2-4ac大于零、等于零、和小于零时的方程的根。要求从主函数输入a,b,c的值并输出结果。
- 【Angular专题】——(1)Angular,孤傲的变革者
- 如何部署前端react项目到服务器,Vue、React前端项目打包部署
- 文件下载及web文件的contentType类型大全
- 【ElasticSearch】ElasticSearch 中使用衰减函数来完美你的搜索结果
- 常用的排序算法总结(一)
- python静态属性@property、类方法@classmethod、静态方法@staticmethod和普通方法
- 【转】VC动态内存分配PPT
- 全国计算机考试cad,全国计算机高新考试AUTO CAD.doc
- 更改文件扩展名HTML,文件的后缀名怎么改|更改文件后缀名的方法
- spring动态代理之cglib动态代理
- google gflags使用指南
- 专业声压手机测试软件,声音测量器app
- 5.2.1_2 普通心理学(彭冉玲第四版) - 第1章 心理学的研究对象和方法