Contents

Manjora安装Nvidia驱动血泪史

最近几天被重装系统快整疯了,什么工作都没有完成,一开始是原来的Arch Linux用的好好的卸载了个软件就不能进入系统了,命令行模式都不行,我一直怕滚动更新滚炸了所以基本上就不更新,结果还是莫名其妙就坏了,有点怀疑自己是不是不应该逞强用Arch,因为感觉它的社区年轻有活力,而且软件包特别全,基本上官方+aur就啥都有,但是自己又懒得参与社区讨论,基本上就没啥debug能力。

后来又想重新安装,结果装了nvidia闭源驱动之后桌面打不开了,我记得之前也遇到过这样的问题自己不知道从哪里看的方法瞎整就好了,结果这次又找不到了,当时就应该记到文档里面的,不仅应该记成文档,还应当写成博客,这就促成了这篇博文。
另外由于更换系统导致许多自己写的文档丢失,恢复起来就特别麻烦,这提示了我平时的文档有其实自己辛苦的成果一定要云备份,最好是github私有仓库。

总之,兜兜转转换了好几个发行版,还是觉得Arch Linux最好用,最后选用了manjora Linux(一个基于Arch Linux 的Linux 发行版),安装起来更加简便,由于需要用nvidia驱动(电脑的显卡不能拿来计算不就白费了吗)必须要解决一换驱动就黑屏的问题。

1. 安装驱动

查看显卡型号

1
lspci | grep -i 'VGA|3D'

据此在https://www.nvidia.com/Download/index.aspx?lang=en-us 下载对应的驱动(linux下为run文件)

此步在我的电脑上不具参考性,因为我的笔记本是混合显卡,装单独的驱动会造成开机黑屏,只能按照官方文档里自动安装驱动

安装命令如下:

1
sudo mhwd -a pci nonfree 0300

它会自动安装驱动video-hybrid-intel-nvidia-430xx-bumblebee,并卸载其它的。成功之后重启就可以进入图形界面了。

2. 使用

使用nvidia-smi命令查看信息时发现出错

NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

搜索时发现单独显卡应使用optirun nvidia-smi命令,此时输出正确的信息

喜大普奔啊!

在使用的时候切换到nvidia显卡

1
optirun -b none  python

再导入torch,发现可以使用gpu啦

3. 总结与思考

一直以为这个问题很难解决来着,没想到跟着官方文档走很快就搞定了,果然manjora蛮好用的。

问题的源头应该就是双显卡装了单显卡的驱动吧,我应该对自己电脑的硬件了解清楚才是。还有就是这么棘手的问题第一次碰到的时候居然没有记录下来,真的是太可惜了,不然之后就不会浪费这么多时间了。还是要养成记文档并及时同步更新的好习惯,这样至少可以避免犯重复的错误并可以时时温故而知新。

参考

  1. https://wiki.manjaro.org/index.php?title=Configure_NVIDIA_(non-free)_settings_and_load_them_on_Startup

  2. manjaro 显卡驱动 https://www.cnblogs.com/a208606/p/10317019.html

  3. https://www.bumblebee-project.org/