找不到内核 3.10.0-1062.el7.x86_64 的内核头文件

找不到内核 3.10.0-1062.el7.x86_64 的内核头文件

我尝试nvidia driver通过以下命令进行安装。

sudo ./NVIDIA-Linux-x86_64-418.43.run --dkms -s

这里我得到了一个错误,如下所示。

ERROR: Failed to run `/sbin/dkms build -m nvidia -v 418.43 -k 3.10.0-1062.el7.x86_64`: Error! echo
   Your kernel headers for kernel 3.10.0-1062.el7.x86_64 cannot be found at
   /lib/modules/3.10.0-1062.el7.x86_64/build or /lib/modules/3.10.0-1062.el7.x86_64/source.
   You can use the --kernelsourcedir option to tell DKMS where it's located.


ERROR: Failed to install the kernel module through DKMS. No kernel module was installed; please try installing again without DKMS, or check the DKMS logs for more
       information.

然而,/lib/modules/3.10.0-1062.el7.x86_64/build/lib/modules/3.10.0-1062.el7.x86_64/source都在我的/lib/modules道路上。

# cd /lib/modules/3.10.0-1062.el7.x86_64
# ls -la
lrwxrwxrwx.  1 root root     39 7月   2 11:11 build -> /usr/src/kernels/3.10.0-1062.el7.x86_64
lrwxrwxrwx.  1 root root      5 7月   2 11:11 source -> build

我已经尝试sudo yum install "kernel-devel-uname-r == $(uname -r)"类似的问题它说这是行不通的

No package kernel-devel-uname-r == 3.10.0-1062.el7.x86_64 available

这是我的输出uname -r

3.10.0-1062.el7.x86_64

这是kernel相关的包

kernel.x86_64                  3.10.0-1062.el7                                                       
kernel.x86_64                  3.10.0-1160.31.1.el7              
kernel-devel.x86_64            3.10.0-1160.31.1.el7                                    
kernel-headers.x86_64          3.10.0-1160.31.1.el7                                                            

我该如何解决这个问题?

答案1

最简单的选项似乎是重新启动,以便运行的内核与已安装的标头(1160.31.1)相匹配。

否则,您必须找到旧内核(1062)的标头包。

相关内容