CUDA 安装后出现 Mok Manager/NVIDIA 驱动程序问题

CUDA 安装后出现 Mok Manager/NVIDIA 驱动程序问题

在 Ubuntu 18.10 上安装 CUDA 10.1(通过网络 deb)时,系统要求我为 Mok 设置密码。当我重新启动计算机时,我看到了 Mok Manager 蓝屏,我猜我应该使用之前设置的密码。然而,我没有选择“注册 MOK”,而是意外地继续启动。

启动后,nvcc --version返回正确的输出(10.1),但是当我尝试使用以下命令检查我的驱动程序时,nvidia-smi我得到了:

NVIDIA-SMI 失败,因为它无法与 NVIDIA 驱动程序通信。请确保已安装并运行最新的 NVIDIA 驱动程序。

我猜想这是跳过 MOK 注册的结果,所以我尝试重新启动,但蓝色的 MOK 屏幕没有再次出现。我尝试按照一些指南尝试返回该屏幕,但我无法做到。此外,有趣的是,现在运行nvcc--version返回

未找到命令“nvcc”,但可以使用以下命令安装:

sudo apt 安装 nvidia-cuda-toolkit

这尤其奇怪,因为可以在 /usr/local/cuda/bin 中找到 nvcc 可执行文件。我不确定如何继续。我已将其缩小到以下选项:

  1. 禁用安全启动(显然它可能会干扰 nvidia 驱动程序)。我不知道这是否会有所帮助还是会使情况恶化。我也不确定如何在我的系统上执行此操作。
  2. 不知怎么回到蓝色的 MOK 屏幕并选择 MOK 注册选项。我试过这样做,但没有成功。
  3. 从我的电脑中删除与 nvidia 相关的所有内容,然后重新安装 nvidia 驱动程序,然后重新安装 CUDA。我不确定这是否足够好,或者是否存在更深层次的问题。
  4. 正确的问题/解决方案可能完全是其他东西,在这种情况下,上述任何一种情况都可能使问题变得更糟。

如果有帮助的话,这里是输出ubuntu-drivers devices(不包括模态框):

供应商:NVIDIA Corporation
型号:GM107M [GeForce GTX 960M]
驱动程序:nvidia-driver-418 - 第三方免费推荐
驱动程序:nvidia-driver-390 - 非免费发行版
驱动程序:xser​​ver-xorg-video-nouveau - 发行版免费内置

我目前正在运行 Windows 10 和 Ubuntu 18.10 的双启动系统(这可能会对我的 MOK/GRUB 情况产生影响)。据lspci -nnk | grep -i vga -A3我所知,英特尔显卡驱动程序目前正在使用中。以下是输出lspci | grep -i nvidia

01:00.0 3D 控制器:NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)

我的最终目标是为 PyTorch 设置 CUDA 和 cuDNN。如果您能提供任何帮助,我将不胜感激。

答案1

我也错过了 MOK 屏幕,下次重启时它没有出现。解决方案是运行

sudo mokutil --import /var/lib/shim-signed/mok/MOK.der

从终端。系统将提示您选择密码,然后当您重新启动时,MOK 注册屏幕将再次出现。选择注册,选择密钥,然后重新输入密码。

归功于NVIDIA 论坛上的这篇文章帮我找到钥匙。

答案2

事实证明解决方案非常简单。

“消失的” nvcc:

我已将下面显示的路径变量添加到我当前的终端实例中,但我没有将其添加到 ~/.bashrc(这意味着 nvcc 仅在该终端实例中工作,因此出现后续“消失”的问题)。可能还有一个 ~/.profile 文件,但似乎首先读取 bashrc(如果存在),因此您可能需要根据可用文件将其添加到其他文件中。如果您不确定,这是一个很好的资源:https://stackoverflow.com/questions/14637979/how-to-permanently-set-path-on-linux-unix

export PATH=/usr/local/cuda-10.1/bin:/usr/local/cuda-10.1/NsightCompute-2019.1${PATH:+:${PATH}}

驱动程序问题:

我通过禁用安全启动解决了所有驱动程序问题。就我而言,我不需要在启动时按住某个键来打开设置。相反,当我启动并到达 GRUB 屏幕选择我的操作系统时,我选择系统设置。这里可以使用安全启动设置。只需禁用、应用并退出即可。这可能是一个黑客行为,但nvidia-smi现在可以正常工作,而且我已经验证了 PyTorch 已连接到 CUDA 并正确使用 GPU。我很确定这也意味着我不再需要担心那个 MOK 注册屏幕了。

相关内容