`Error Could not locate dkms.conf file`!

分享于 

4分钟阅读

ubuntu

 

问题

最近的apt-get dist-upgrade,我收到了以下错误:


Setting up linux-headers-3.5.0-19-generic (3.5.0-19.30) ...


Examining /etc/kernel/header_postinst.d.


run-parts: executing /etc/kernel/header_postinst.d/dkms 3.5.0-19-generic /boot/vmlinuz-3.5.0-19-generic


Error! Could not locate dkms.conf file.


File: does not exist.




答案1

不是所有的dkms驱动程序在内核升级时会得到更新。

首先,可以通过重新配置使用dkms的软件包来解决这个问题,强制他们为当前的内核重新编译,例如,AMD显卡驱动程序失败


sudo dpkg-reconfigure fglrx



这会得到当前版本的驱动程序配置。


dkms status


ls -R /var/lib/dkms




ls -l /var/lib/dkms




答案2

这通常是由/var/lib/dkms中的模块引起的,这些模块的源子目录中没有dkms.conf文件-dkms需要此文件,因此如果缺少该文件将报告错误,然后可能会丢失一些有效的模块。

要查找有问题的模块,请运行以下短脚本:


for i in /var/lib/dkms/*/[^k]*/source; do [ -e"$i" ] || echo"$i";done



将输出dkms模块目录;然后,你可以决定是卸载包,还是手动安装或重命名它们,将它们移到其他位置或将其删除。


答案3


Error! Could not locate dkms.conf file.


File: does not exist.



我将/var/lib/dkms的内容作为备份复制到另一个目录,然后在/var/lib/dkms;中删除了vboxhost目录


mkdir ~/backup_dkms


cp -r /var/lib/dkms/* ~/backup_dkms 


rm -rf /var/lib/dkms/vboxhost



然后我重新配置了virtualbox包,如下所示:


sudo dpkg-reconfigure virtualbox-4.2



它成功地完成了以下操作:


 * Trying to register the VirtualBox kernel modules using DKMS




答案4

每次内核更新和重新启动,都需要重新安装NVIDIA驱动程序,实际上,问题是,在/usr/src/下有多个具有相同前缀nvidia-的模块文件夹,在/var/lib/dkms/nvidia下有多个具有不同版本号的文件夹。


 dkms status


 dkms autoinstall




答案5

从dkms删除Nvidia文件,然后重新安装dkms:


rm -rf /var/lib/dkms/nvidia


yum reinstall dkms



然后重新安装Nvidia驱动程序


./NVIDIA-installer.bin --dkms


reboot



警告,可以正常工作,但可能不是正确方法。



文件  LOC  Locate  
相关文章