首页 > 系统相关 >【linux基础】ubuntu系统NVIDIA驱动安装

【linux基础】ubuntu系统NVIDIA驱动安装

时间:2022-10-05 20:05:56浏览次数:79  
标签:linux 文件 nvidia ubuntu CUDA NVIDIA 驱动 安装

前言

在安装GPU环境下的软件工具,特别是CUDA/CUDNN等,一定要先把GPU环境搭建好。

NVIDIA驱动安装会遇到各种问题,真希望黄教主可以将各个工具如何安装使用讲解的更加细致、清楚一些,有时候按照官网的步骤安装也会遇到各种问题。

NVIDIA驱动的安装一定要与显卡类型、linux内核版本匹配,驱动安装好之后,软件工具的安装版本也一定要与驱动版本、内核版本匹配,这个容易出问题。

博主使用*.run文件安装NVIDIA驱动,可以参考NVIDIA官网​​here​​。

操作过程

首先,需要验证本地环境是否适合安装NVIDIA驱动,安装之前需要一些准备工作,参考​​here​​;

然后,安装Nvidia显卡的官方驱动和系统自带的nouveau驱动冲突,需要禁用Nouveau驱动​​Disable the Nouveau drivers ​​。

1)创建一个文件/etc/modprobe.d/blacklist-nouveau.conf,文件内容如下。

blacklist nouveau
options nouveau modeset=0

2) 重新生成initramfs内核;

sudo

3)使用Alt+Ctrl+F1退出图形模式,进入命令行模式。

4)关闭图像界面模式;

sudo

5) 运行CUDA Toolkit的run文件。

sudo sh

运行的过程中,记得其中的OpenGl选项选择no,特别注意选择yes/no的时候要仔细点。

6) 安装完成之后需要重启图像界面,但是在进入图形模式之前,需要开启lightdm,一定要记住.

sudo

7) 使用Alt+Ctrl+F7退出命令行模式,进入图形模式。

另外,在安装驱动和CUDA之前需要将之前安装的文件卸载。

基于CUDA Toolkit的run文件安装时,卸载驱动方法如下:

# Use the following command to uninstall a Toolkit runfile installation:
$ sudo /usr/local/cuda-X.Y/bin/uninstall_cuda_X.Y.pl

# Use the following command to uninstall a Driver runfile installation:
$ sudo

8) 安装之后需要查看是否有正确的文件权限。

Check that the device files/dev/nvidia* exist and have the correct (0666) file permissions. These files are used by the CUDA Driver to communicate with the kernel-mode portion of the NVIDIA Driver. Applications that use the NVIDIA driver, such as a CUDA application or the X server (if any), will normally automatically create these files if they are missing using the setuidnvidia-modprobe tool that is bundled with the NVIDIA Driver. However, some systems disallow setuid binaries, so if these files do

查看命令

ls

如果没有需要创建如下文件,文件名自定义。

#!/bin/bash

/sbin/modprobe nvidia

if [ "$?" -eq 0 ]; then
# Count the number of NVIDIA controllers found.
NVDEVS=`lspci | grep -i NVIDIA`
N3D=`echo "$NVDEVS" | grep "3D controller" | wc -l`
NVGA=`echo "$NVDEVS" | grep "VGA compatible controller" | wc -l`

N=`expr $N3D + $NVGA - 1`
for i in `seq 0 $N`; do
mknod -m 666 /dev/nvidia$i c 195 $i
done

mknod -m 666 /dev/nvidiactl c 195 255

else
exit 1
fi

/sbin/modprobe nvidia-uvm

if [ "$?" -eq 0 ]; then
# Find out the major device number used by the nvidia-uvm driver
D=`grep nvidia-uvm /proc/devices | awk '{print $1}'`

mknod -m 666 /dev/nvidia-uvm c $D 0
else
exit 1
fi

View Code

9) 安装完成之后可能会出现界面分辨率不正常的问题,可参考​​here​​;

也可能遇到无法进入图像界面的情况,可尝试使用以下命令。

使用Alt+Ctrl+F1进入命令行模式,然后kill系统进程。

sudo pkill Xorg
or
sudo

总结

目前博主已经多次安装过CUDA和NVIDIA,期间遇到过各种意想不到的问题,参考过很多博客,特别注意一点安装NVIDIA驱动之后一定不能随随便便更新系统环境,因为不小心系统NVIDIA驱动就被更新了,这时候就惨了,你需要重新安装NVIDIA驱动和CUDA等,安装的时候最好是参考NVIDIA​​官网​​,结合着博客,进行操作。

参考

1. ​​https://oldpan.me/archives/pytorch-gpu-ubuntu-nvidia-cuda90​​ ;

4. ​​https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13/​​;

5. ​​https://developer.nvidia.com/cuda-toolkit-archive​​;

6. ​​官网​​;

7. ​​tensorflow各个版本的CUDA以及Cudnn版本对应关系​​;

标签:linux,文件,nvidia,ubuntu,CUDA,NVIDIA,驱动,安装
From: https://blog.51cto.com/u_15711436/5732822

相关文章

  • 【计算机视觉】人脸检测模型的评估方法-linux
    前言人脸检测标准库​​FDDB​​详细介绍了数据库和使用方法。对于训练的模型,如何评估模型的效果呢,本文对此进行介绍。说实话,参考了很多博客,但是感觉都不是很明白(当然本文......
  • 【opencv基础】linux系统opencv以及opencv_contrib的安装与使用
    前言本文主要介绍如何在linux系统安装使用opencv.具体步骤可参考opencv官网​​here.​​步骤编译源码之前需要安装相关依赖库;1.下载源码;2.解压源码;3.配置cmake;注意将配置的......
  • Linux下如何统计指定文件夹下的文件个数、目录个数呢?
    下文笔者讲述linux中统计指定文件夹中文件个数和目录个数的方法分享,如下所示:统计当前文件夹下文件的个数,包括子文件夹里的ls-lR|grep"^-"|wc-l统计文件夹下目录的个数,包......
  • Linux多线程服务端编程 pdf
    高清文字版下载链接:https://pan.baidu.com/s/1Ar0sbiycp70BdNysXfkg2w点击这里获取提取码 ......
  • 14.ansible模块之 selinux firewalld iptables
    1.1selinux官方示例EXAMPLES:-name:EnableSELinuxselinux:policy:targetedstate:enforcing-name:PutSELinuxinpermissivemode,loggingact......
  • Linux平台编译带PCL和PDAL插件的CloudCompare
    最近的综合课程设计需要用到CloudCompare这款软件处理点云数据,最开始我发现Debian的apt软件库就包含它,安装后却发现打不开.pcd格式的数据,于是需要从源码编译附带PCL插件的C......
  • MySQL数据库的各种安装方式【Windows,Linux,Docker】一次都告诉你
      MySQL数据库是作为程序员来说必备的一个组件,而安装相对来说又是非常繁琐的,所以本文就给大家整理下MySQL的各种安装操作。官网下载地址:​​https://dev.mysql.com/downlo......
  • # 如何在Windows下运行Linux程序
    如何在Windows下运行Linux程序一、搭建Linux环境1.1安装VMwareWorkstationhttps://www.aliyundrive.com/s/TvuMyFdTseh1.2下载CentOS映像文件阿里云站点:ht......
  • Linux命令全解
    strace获取某个可执行文件执行过程中用到的所有系统调用:strace-fg++main.cpp&|vim查看g++编译过程调用了哪些系统调用,通过管道符用vim接收:%!grepexecve:......
  • Linux帐号和权限管理
    用户和用户组概述用户种类超级管理员:拥有最高权限的账户(默认叫做root)可以正常登录人可以使用普通用户:权限受限的用户可以正常登录人可以使用程序用户:不可以正......