最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

ubuntu NVIDIA驱动安装及安装过程黑屏解决

业界 admin 2浏览 0评论

文章目录

    • 1 查看推荐的版本
    • 2 下载run文件
    • 3 环境配置
      • 3.1 安装和卸载包
      • 3.2 禁用自带的驱动nouveau
      • 3.3 设置BIOS
        • 3.3.1 关闭安全启动(Secure Boot)
        • 3.3.2 开启仅GPU渲染
    • 4 安装驱动
      • 4.1 关闭图形化界面
      • 4.2 编译驱动
      • 4.3 检查安装是否成功
      • 4.4 禁止内核更新
    • 5 重启黑屏、显示一条横杆.......
      • 5.1 进入tty终端
      • 5.2 卸载原有驱动和X配置文件
      • 5.3 杀死nvidia进程

在进行半物理仿真实验时,如果不装nvidia驱动,仅仅使用intel的集显或者不使用GPU,那gazebo的帧率肯定不会高,可能会影响大场景下的实验效果。但是NVIDIA对ubuntu适配不太好,所以有的电脑装nvidia驱动非常麻烦,比如我的 .,但是也有的电脑一次成功。

nvidia驱动安装有三种方式:系统的软件与更新里面可以图形化界面安装、二进制安装、run文件安装。但是好像前两种安装方式对gazebo加速不了,具体我没试过,只是听说。所以稳妥一点还是选择run文件安装,也就是手动下载run文件,然后运行安装。

1 查看推荐的版本

终端输入

ubuntu-drivers devices

会输出recommended(推荐)的驱动版本,我这里是535。

2 下载run文件

直接搜索有两个结果,第一个感觉驱动版本少一点,后面的可选版本多一点。

第二个下载地址:点击链接进入下载地址

第一栏输入你的显卡关键词,比如4060,会有很多版本,注意选择Laptop(笔记本)和台式。

如果你想找更多的版本,就点下面的Linux驱动程式。

找到你想下载的版本,直接点击下载即可下载.run文件。具体下载哪个小版本,就得多试试了,我是535.113.01,而且我总共试过十几个版本了,只有这个版本可以,但是好像其他人配起来就很轻松。(可能百亿补贴买的电脑有点脾气)

3 环境配置

3.1 安装和卸载包

先下载必备的编译工具

sudo apt-get update   #更新软件列表
sudo apt-get install g++
sudo apt-get install gcc
sudo apt-get install make

如果是新系统就不用卸载,本身也没有。

sudo apt-get remove --purge nvidia*

3.2 禁用自带的驱动nouveau

使用黑名单的方式禁用

sudo nano /etc/modprobe.d/blacklist.conf

在blacklist.conf末尾添加以下两行,保存后关闭文本

blacklist nouveau
options nouveau modeset=0

更新配置,然后重启电脑

sudo update-initramfs -u
sudo reboot #重启电脑

开机之后查看是否禁用成功,没有输出代表禁用成功

lsmod | grep nouveau   

3.3 设置BIOS

重启进入BIOS,在开机时一直按F1或者F2或者Fn+F1、Fn+F2,可以搜一下自己电脑进入BIOS的键。

3.3.1 关闭安全启动(Secure Boot)

3.3.2 开启仅GPU渲染

如果安装很多版本的驱动开机都进不去、黑屏,那么可能是BIOS设置不正确,请检查参数。

4 安装驱动

4.1 关闭图形化界面

我的电脑安装nvidia驱动时需要关闭图形化显示界面,否则会报错让你先关闭图形化界面,使用下面这条命令关闭图形化界面,注意:关闭图形化界面肯定会黑屏,这是正常的,不要担心,如果重启依然黑屏,后面有解决办法。

如果安装的是gdm3就是第二条,如果是lightdm就是第一条,一般系统默认是gdm3。
sudo /etc/init.d/lightdm stop
sudo service gdm3 stop   #停止显示服务

4.2 编译驱动

按Ctrl+Alt+(任意F2-F6),可以多试几次,直到终端出现用户登录的提示。输入你的用户名和密码,进入tty界面

然后编译

cd {你的NVIDIA安装文件路径}
sudo chmod 777 NVIDIA-Linux-x86_64-535.113.01.run   #给你下载的驱动赋予可执行权限,才可以安装
sudo ./NVIDIA-Linux-x86_64-535.113.01.run  --no-opengl-files  #安装

选择选项时:

1.The distribution-provided pre-install script failed! Are you sure you want to continue?
        选择continue installation
2.Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later?  
        选择 yes 继续
3.问题大概是:Nvidia's 32-bit compatibility libraries? 
        选择 No 继续
4.Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up.  
        选择 Yes 继续
  • DKMs是用于系统自动更新内核时,可能驱动会掉,然后重新编译nvidia驱动,所以最好选择yes
  • X配置是将图形化界面配置为nvidia,这个如果要用gazebo加速的话,还是选上吧,不然还得配置其他的。

4.3 检查安装是否成功

进入图形化界面

如果安装的是gdm3就是第二条,如果是lightdm就是第一条,一般系统默认是gdm3。
sudo /etc/init.d/lightdm start
sudo service gdm3 start   #停止显示服务

进入系统后输入,看到相关信息后安装完成

nvidia-smi

查看下面的进程,如果一条都没有,那应该是没有成功,可能是版本不对。

如果没有安装成功,那么需要卸载再安装,先把进入tty终端,然后执行命令卸载:

sudo nvidia-uninstall

注意让你选择是否删除X的配置文件时,需要选择[Yes]删除配置文件,该配置文件就是在/etc/X11/xorg.conf的配置。

然后再进行编译安装就行。

4.4 禁止内核更新

如果安装成功,还有一步要走,ubuntu可能之后会自动更新内核,那么就需要用dkms重新编译,但是我在编译的时候报错了,我也不想解决,所以直接把新的内核删了(删除多余的内核),只保留原来的内核,所以安装完就可以保持内核不更新,免得哪一天开机掉驱动。

#查看当前内核
dpkg --list | grep linux-image
sudo apt-mark hold linux-image-5.15.0-67-generic

在前面显示hi(表示已经被hold)应该就可以了。(ii表示现存的)

5 重启黑屏、显示一条横杆…

这个问题出现在安装NVIDIA驱动时,大概率就是驱动版本不适配或者BIOS的仅GPU没有开,开机程序时一直卡在NVIDIA启动,这个时候的如果想进入桌面或者安装其他版本的驱动就需要杀死现在的图形化界面加载进程,具体操作如下:

5.1 进入tty终端

按Ctrl+Alt+(任意F2-F6),可以多试几次,直到终端出现用户登录的提示。输入你的用户名和密码,进入系统。

5.2 卸载原有驱动和X配置文件

先卸载nvidia的驱动,注意让你选择是否删除X的配置文件时,需要选择[Yes]删除配置文件,该配置文件就是在/etc/X11/xorg.conf的配置,里面的内容就是指定系统加载nvidia显卡而不是Intel的集显。

有的教程时配置该文件为intel集显进入系统,不可否认该方法也可以进去图形化界面,但是对我们来说是没有意义的,因为安装驱动时也会把那个配置文件覆盖了。

sudo nvidia-uninstall

5.3 杀死nvidia进程

然后查看nvidia进程,并杀死他

sudo lsof -n -w /dev/nvidia*

sudo kill 1234     #具体的进程请查看上面的PID数字

应该杀死之后系统就切到intel进行图形化界面了。

文章目录

    • 1 查看推荐的版本
    • 2 下载run文件
    • 3 环境配置
      • 3.1 安装和卸载包
      • 3.2 禁用自带的驱动nouveau
      • 3.3 设置BIOS
        • 3.3.1 关闭安全启动(Secure Boot)
        • 3.3.2 开启仅GPU渲染
    • 4 安装驱动
      • 4.1 关闭图形化界面
      • 4.2 编译驱动
      • 4.3 检查安装是否成功
      • 4.4 禁止内核更新
    • 5 重启黑屏、显示一条横杆.......
      • 5.1 进入tty终端
      • 5.2 卸载原有驱动和X配置文件
      • 5.3 杀死nvidia进程

在进行半物理仿真实验时,如果不装nvidia驱动,仅仅使用intel的集显或者不使用GPU,那gazebo的帧率肯定不会高,可能会影响大场景下的实验效果。但是NVIDIA对ubuntu适配不太好,所以有的电脑装nvidia驱动非常麻烦,比如我的 .,但是也有的电脑一次成功。

nvidia驱动安装有三种方式:系统的软件与更新里面可以图形化界面安装、二进制安装、run文件安装。但是好像前两种安装方式对gazebo加速不了,具体我没试过,只是听说。所以稳妥一点还是选择run文件安装,也就是手动下载run文件,然后运行安装。

1 查看推荐的版本

终端输入

ubuntu-drivers devices

会输出recommended(推荐)的驱动版本,我这里是535。

2 下载run文件

直接搜索有两个结果,第一个感觉驱动版本少一点,后面的可选版本多一点。

第二个下载地址:点击链接进入下载地址

第一栏输入你的显卡关键词,比如4060,会有很多版本,注意选择Laptop(笔记本)和台式。

如果你想找更多的版本,就点下面的Linux驱动程式。

找到你想下载的版本,直接点击下载即可下载.run文件。具体下载哪个小版本,就得多试试了,我是535.113.01,而且我总共试过十几个版本了,只有这个版本可以,但是好像其他人配起来就很轻松。(可能百亿补贴买的电脑有点脾气)

3 环境配置

3.1 安装和卸载包

先下载必备的编译工具

sudo apt-get update   #更新软件列表
sudo apt-get install g++
sudo apt-get install gcc
sudo apt-get install make

如果是新系统就不用卸载,本身也没有。

sudo apt-get remove --purge nvidia*

3.2 禁用自带的驱动nouveau

使用黑名单的方式禁用

sudo nano /etc/modprobe.d/blacklist.conf

在blacklist.conf末尾添加以下两行,保存后关闭文本

blacklist nouveau
options nouveau modeset=0

更新配置,然后重启电脑

sudo update-initramfs -u
sudo reboot #重启电脑

开机之后查看是否禁用成功,没有输出代表禁用成功

lsmod | grep nouveau   

3.3 设置BIOS

重启进入BIOS,在开机时一直按F1或者F2或者Fn+F1、Fn+F2,可以搜一下自己电脑进入BIOS的键。

3.3.1 关闭安全启动(Secure Boot)

3.3.2 开启仅GPU渲染

如果安装很多版本的驱动开机都进不去、黑屏,那么可能是BIOS设置不正确,请检查参数。

4 安装驱动

4.1 关闭图形化界面

我的电脑安装nvidia驱动时需要关闭图形化显示界面,否则会报错让你先关闭图形化界面,使用下面这条命令关闭图形化界面,注意:关闭图形化界面肯定会黑屏,这是正常的,不要担心,如果重启依然黑屏,后面有解决办法。

如果安装的是gdm3就是第二条,如果是lightdm就是第一条,一般系统默认是gdm3。
sudo /etc/init.d/lightdm stop
sudo service gdm3 stop   #停止显示服务

4.2 编译驱动

按Ctrl+Alt+(任意F2-F6),可以多试几次,直到终端出现用户登录的提示。输入你的用户名和密码,进入tty界面

然后编译

cd {你的NVIDIA安装文件路径}
sudo chmod 777 NVIDIA-Linux-x86_64-535.113.01.run   #给你下载的驱动赋予可执行权限,才可以安装
sudo ./NVIDIA-Linux-x86_64-535.113.01.run  --no-opengl-files  #安装

选择选项时:

1.The distribution-provided pre-install script failed! Are you sure you want to continue?
        选择continue installation
2.Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later?  
        选择 yes 继续
3.问题大概是:Nvidia's 32-bit compatibility libraries? 
        选择 No 继续
4.Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up.  
        选择 Yes 继续
  • DKMs是用于系统自动更新内核时,可能驱动会掉,然后重新编译nvidia驱动,所以最好选择yes
  • X配置是将图形化界面配置为nvidia,这个如果要用gazebo加速的话,还是选上吧,不然还得配置其他的。

4.3 检查安装是否成功

进入图形化界面

如果安装的是gdm3就是第二条,如果是lightdm就是第一条,一般系统默认是gdm3。
sudo /etc/init.d/lightdm start
sudo service gdm3 start   #停止显示服务

进入系统后输入,看到相关信息后安装完成

nvidia-smi

查看下面的进程,如果一条都没有,那应该是没有成功,可能是版本不对。

如果没有安装成功,那么需要卸载再安装,先把进入tty终端,然后执行命令卸载:

sudo nvidia-uninstall

注意让你选择是否删除X的配置文件时,需要选择[Yes]删除配置文件,该配置文件就是在/etc/X11/xorg.conf的配置。

然后再进行编译安装就行。

4.4 禁止内核更新

如果安装成功,还有一步要走,ubuntu可能之后会自动更新内核,那么就需要用dkms重新编译,但是我在编译的时候报错了,我也不想解决,所以直接把新的内核删了(删除多余的内核),只保留原来的内核,所以安装完就可以保持内核不更新,免得哪一天开机掉驱动。

#查看当前内核
dpkg --list | grep linux-image
sudo apt-mark hold linux-image-5.15.0-67-generic

在前面显示hi(表示已经被hold)应该就可以了。(ii表示现存的)

5 重启黑屏、显示一条横杆…

这个问题出现在安装NVIDIA驱动时,大概率就是驱动版本不适配或者BIOS的仅GPU没有开,开机程序时一直卡在NVIDIA启动,这个时候的如果想进入桌面或者安装其他版本的驱动就需要杀死现在的图形化界面加载进程,具体操作如下:

5.1 进入tty终端

按Ctrl+Alt+(任意F2-F6),可以多试几次,直到终端出现用户登录的提示。输入你的用户名和密码,进入系统。

5.2 卸载原有驱动和X配置文件

先卸载nvidia的驱动,注意让你选择是否删除X的配置文件时,需要选择[Yes]删除配置文件,该配置文件就是在/etc/X11/xorg.conf的配置,里面的内容就是指定系统加载nvidia显卡而不是Intel的集显。

有的教程时配置该文件为intel集显进入系统,不可否认该方法也可以进去图形化界面,但是对我们来说是没有意义的,因为安装驱动时也会把那个配置文件覆盖了。

sudo nvidia-uninstall

5.3 杀死nvidia进程

然后查看nvidia进程,并杀死他

sudo lsof -n -w /dev/nvidia*

sudo kill 1234     #具体的进程请查看上面的PID数字

应该杀死之后系统就切到intel进行图形化界面了。

发布评论

评论列表 (0)

  1. 暂无评论