第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > ubuntu内核和驱动版本不兼容_让Ubuntu更新内核时自动编译官方版Nvidia驱动模块

ubuntu内核和驱动版本不兼容_让Ubuntu更新内核时自动编译官方版Nvidia驱动模块

时间:2022-08-01 02:55:23

相关推荐

ubuntu内核和驱动版本不兼容_让Ubuntu更新内核时自动编译官方版Nvidia驱动模块

用nv显卡的兄弟们估计都经历过升级新内核后,显卡驱动又得手动安装一次。虽然不怎么难,但是也挺麻烦的。今天在上看到一篇文章介绍用脚本自动安装nv驱动的。试了一下可以。把原文稍微整理翻译了下,跟大家分享一下。

在Ubuntu内核升级后自动安装nvdia驱动

如果你使用的是在nv的官方网站下载的驱动,每当内核升级后,你必须重新手动安装nv驱动。本指南目标是当内核升级后自动进行安装驱动的过程,而不需要手工干预。

本文假定你已经正确的安装了nvidia官方驱动,并在安装后已经重启了至少一次(这非常重要,因为如果你没有正确安装并重启,下述将不能正常工作)。使用非官方驱动的请跳过。

第一步,把你使用的驱动放到/usr/src下,并生成链接。例如:

sudo mv NVIDIA-Linux-x86-190.42-pkg0.run /usr/src

sudo ln -s /usr/src/NVIDIA-Linux-x86-190.42-pkg0.run /usr/src/nvidia-driver

这样做的目的是当你更换所用的驱动时,只需要删除原来的链接后再指定新的链接即可,不需要改变我们将使用的脚本(script)。

自动安装nv驱动的脚本如下:

#!/bin/bash

#

# Set this to the exact path of the nvidia driver you plan to use

# It is recommended to use a symlink here so that this script doesn't

# have to be modified when you change driver versions.

DRIVER=/usr/src/nvidia-driver

# 如果nvidia.ko不存在就重新编译

if [ -e /lib/modules/$1/kernel/drivers/video/nvidia.ko ] ; then

echo "NVIDIA driver already exists for this kernel." >&2

else

echo "Building NVIDIA driver for kernel $1" >&2

sh $DRIVER -K -k $1 -s -n 2>1 > /dev/null

if [ -e /lib/modules/$1/kernel/drivers/video/nvidia.ko ] ; then

echo " SUCCESS: Driver installed for kernel $1" >&2

else

echo " FAILURE: See /var/log/nvidia-installer.log" >&2

fi

fi

exit 0

基本上,原理是检查新安装的内核是否安装了正确的nv驱动,如果没有,脚本将自动为新内核安装驱动模块。

把上面的脚本命名为update-nvidia,并通过如下命令安装:

sudo mkdir -p /etc/kernel/postinst.d

sudo install update-nvidia /etc/kernel/postinst.d

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。