问题背景

在安装网卡、GPU 驱动时出现Kernel相关的报错,具体表现如下

安装 WX1860 芯片网卡驱动时,使用 make 命令出现报错

1
2
3
4
[root@localhost ~]# make
common.mk:98: *** Kernel header files not in any of the expected locations.
common.mk:99: *** Install the appropriate kernel development package, e.g.
common.mk:100: *** kernel-devel, for building kernel modules and try again. Stop.

安装 NVIDIA GPU 驱动时出现如下报错

报错

问题分析[1]

报错的意思就是内核和内核头文件版本不一致,找不到当前内核源的内核代码树

我们可以先查看当前的系统内核信息,获取到当前内核版本为:4.19.113.40.nfs4.x8_64

1
uname -r

查看当前内核版本

查看本地yum库中所有Kernel信息

1
yum list |grep kernel

yum包

第一列和第二列分别是名称和版本,第三列代表yum库 anacondabaseupdates ,前面有 @ 符号代表已安装[2]

保证我们使用的版本是一致的就行,我直接安装较新版本,分别执行

1
yum -y install kernel-4.19.113-59.nfs4
1
yum -y install kernel-headers-4.19.113-59.nfs4
1
yum -y install kernel-devel-4.19.113-59.nfs4

当然也可以把 headersdevel 全部更新成和内核版本 4.19.113.40.nfs4.x8_64一样的

安装或更新内核头

重新使用 make 命令安装网卡驱动/安装 NVIDIA GPU 驱动,问题解决

安装驱动

网讯千兆网卡WX1860驱动安装

编译:

1
make

安装:

1
make install

or

1
make modules_install

加载驱动:

1
2
modprobe ngbe
# 仅安装完首次需要手动加载,若重启系统,系统会自动加载驱动

查看驱动是否加载成功(环境上需安装网迅千兆网卡:

1
2
[root@SW ~]# lsmod | grep ngbe 
ngbe 208399 0

此时驱动已加载成功

NVIDIA 驱动安装

NV 驱动官网[3]按照型号要求进行下载,系统中直接执行安装脚本按要求一步一步安装即可

1
./NVIDIA-Linux-x86_64-550.54.15.run

参考


  1. Centos 安装网卡驱动make时报错Kernel header files not in any of the expected locations.解决办法之一:https://blog.csdn.net/qq_43530066/article/details/129122611 ↩︎

  2. Linux基础——yum工具详解:https://blog.csdn.net/CityzenOldwang/article/details/61614707 ↩︎

  3. NV驱动下载:https://www.nvidia.com/Download/index.aspx?lang=cn ↩︎