问题

在ubuntu下安装nvcc后出现了显卡驱动无法出了问题:

输入:nvidia-smi
结果:NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver

这表明驱动核心模块已经崩溃或丢失,需要重新安装显卡驱动。

小科普:

nvcc(CUDA Toolkit)和 NVIDIA 显卡驱动是两个完全独立的东西

nvcc (CUDA Toolkit) 属于用户态软件层。它是一套编译器和开发工具,装在 /usr/local/cuda 里;

NVIDIA 驱动 属于系统内核态模块 (Kernel Module)。它是操作系统用来真正点亮和控制物理显卡的底层代码。

可以通过操作:

dkms status

检查显卡驱动的编译状态,如果运行后没有任何输出,或者提示 error/failed,就说明驱动根本没编译进内核。那么我们就需要卸载原有的残缺显卡驱动并重新安装新的显卡驱动

第一步:清理遗留的驱动

# 只彻底卸载名字以 nvidia- 或 libnvidia- 开头的包
sudo apt-get purge '^nvidia-.*'
sudo apt-get purge '^libnvidia-.*'

# 清理下载的安装包缓存(释放硬盘空间,绝对安全)
sudo apt-get clean

这里AI建议我使用autoremove,但是上次在实验室服务器上运行导致服务器直接被我搞崩了,所以我不大敢用,原因可能有以下几点,所以建议谨慎使用autoremove啊啊啊啊。

sudo apt-get autoremove

autoremove 的工作原理是清理那些“为了满足其他软件的依赖而自动安装,但现在已经不被任何软件需要”的孤儿包。在正常情况下,它是安全的。但是,当频繁安装、卸载底层的驱动时,极容易触发一个可怕的连锁反应:

1. 显卡驱动的冲突有时会导致一个叫 ubuntu-desktop(Ubuntu 桌面环境的核心元软件包)被意外卸载。

2. 因为 ubuntu-desktop 没了,系统会误以为构成图形界面的几百个底层组件(字体、窗口管理器、网络面板等)全都变成了“不再需要的孤儿”。

3. 这时一旦运行 autoremove 并按了 y,它就会极其高效地把你的整个图形界面删得一干二净。

第二步:安装推荐驱动

sudo ubuntu-drivers autoinstall

第三步:重启

sudo reboot

应该就能解决问题了!!

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐