ubuntu完全卸载cuda(备忘)

cuda的卸载方法网上都有很多,这些方法大同小异,几乎都是错的,我在卸载cuda时基本试了个遍,各种踩坑。
能查到的方法一般都是从官方文档搬过来的,然而这种使用apt-get --purge remove命令的方法并不能将cuda完全卸掉。这里把官方文档的方法贴出来:

 sudo apt-get --purge remove "*cublas*" "*cufft*" "*curand*" \"*cusolver*" "*cusparse*" "*npp*" "*nvjpeg*" "cuda*" "nsight*" 

我运行过这个命令,运行完之后,命令行输入nvcc --version,发现自己要卸载的cuda居然还在,切换到/usr/local中,发现自己的cuda赫然在列,大写的卸载失败。
(官方的方法不好用真堪称大水冲了龙王庙…)

卸载的实现方法

那么如何正确、完全的卸载cuda呢?

其实cuda安装时就已经准备好了卸载的接口,卸载程序在/usr/local/cuda-xx.x/bin下,需要注意的是cuda10.0及之前的版本卸载程序名为uninstall_cuda_xx.x.pl,而cuda10.1及之后的版本卸载程序名为cuda-uninstaller
找到之后运行卸载程序即可,这里的xx.x表示自己的cuda版本。

在命令行中卸载

注意把下边的xx.x替换为自己的cuda版本。
cuda10.0及以下的卸载:

cd /usr/local/cuda-xx.x/bin/
sudo ./uninstall_cuda_xx.x.pl
sudo rm -rf /usr/local/cuda-xx.x

cuda10.1及以上的卸载:

cd /usr/local/cuda-xx.x/bin/
sudo ./cuda-uninstaller
sudo rm -rf /usr/local/cuda-xx.x

最后边加了一句sudo rm -rf /usr/local/cuda-xx.x,这是因为一般情况下cuda都配置了cudnn,在运行卸载程序时只会卸载cuda而不会一并删除cudnn的文件。因为cudnn文件还在的缘故,自己的cuda-xx.x文件夹仍然在,需要手动删除。
所以如果自己要卸载的cuda没有配置cudnn,那么cuda-xx.x文件夹在卸载完成后会被自动删除,也就没必要再运行最后一句了。

为了保证可以再执行一遍下边

  • 删除 CUDA 相关的依赖项:使用 sudo apt autoremove 命令删除 CUDA 的相关依赖项。

  • 删除 CUDA 相关的环境变量:打开 /etc/environment 文件,将可能存在的 CUDA 环境变量删除或注释掉,例如:

    # PATH="/usr/local/cuda/bin:$PATH"
    # LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH"
    

猜你喜欢

转载自blog.csdn.net/m0_71816999/article/details/130873922
今日推荐