要运行高版本的GPU版TensorFlow,需要更新宿主机的显卡驱动(本文以NVIDIA390为例)

一、更新驱动

禁用nouveau驱动:

添加/etc/modprobe.d/blacklist.conf文件
blacklist nouveau
options nouveau modeset=0 “sudo update-initramfs -u”
执行“lsmod | grep nouveau”,如无变化,则禁用成功
此处不能直接重启,否则进不了系统。
若重启导致无法进入系统,解决方案:https://blog.csdn.net/wei_supreme/article/details/82227765
添加Graphic Drivers PPA:
“sudo -E add-apt-repository ppa:graphics-drivers/ppa”
“sudo apt-get update” 搜索适合的驱动“sudo ubuntu-drivers devices”

  卸载已有驱动 sudo apt-get remove --purge nvidia*

关闭(图形)桌面显示管理器LightDM:“sudo service lightdm stop”

安装驱动:“sudo apt-get install nvidia-384”
执行“sudo apt-get upgrade”,重启sudo reboot
执行“nvidia-smi”即可查看驱动的安装状态显示安装成功
如出现错误:“nvidia-smi has failed because it couldn‘t communicate with the nvidia driver”,请disable系统的security boot即可
重新启动图形环境“sudo service lightdm start”

  二、报错:

Error: failed to start container "nvidia-device-plugin-ctr": Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:402: container init caused \"process_linux.go:385: running prestart hook 0 caused \\\"error running hook: exit status 1, stdout: , stderr: exec command: [/usr/bin/nvidia-container-cli --load-kmods configure --ldconfig=@/sbin/ldconfig.real --device=all --utility --pid=11077 /var/lib/docker/overlay2/510a6de5ed82decf7421a392e5274b4fe47e8d0cd3610175c3550f1d26c91376/merged]\\\\nnvidia-container-cli: initialization error: driver error: failed to process request\\\\n\\\"\"": unknown

说是驱动有问题,第一个想到的就是因为将早先的 nvidia-384 驱动更新到了 nvidia-410 可能有问题,再重启之后没有作用,于是尝试通过 apt 重新安装 nvidia-410


$ add-apt-repository ppa:graphics-drivers/ppa
$ apt update
$ apt install nvidia-410

  

重启后依然发现类似问题,再去搜索发现 https://zhuanlan.zhihu.com/p/37519492 和我遇到的问题类似,通过命令 nvidia-container-cli -k -d /dev/tty info 得到具体的报错:

E0117 08:51:20.843706 12905 driver.c:197] could not start driver service: load library failed: libnvidia-fatbinaryloader.so.384.145: cannot open shared object file: no such file or directory

384 这个驱动版本我明明已经删了,为什么还要找这个库呢?是不是因为新的 410 安装的不全呢?再往后看,提到

安装驱动的时候会自动安装这个libcuda1-384包的,估计是什么历史遗留问题,或者是purge 又install把包的依赖关系搞坏了,因此现在需要重新安装。

立即想到我的 410 是不是也没有安装 libcuda1-410 呢?赶紧 apt search libcuda 发现果然有这么个依赖,apt install libcuda1-410 赶紧安装,再次跑 nvidia-container-cli -k -d /dev/tty info 就一切正常了。

三、报错:ImportError: libcuda.so.1: cannot open shared object file: No such file or directory

解决方案:

进入/usr/lib/nvidia-390

建立软连接:

sudo ln -f -s /usr/lib/x86_64-linux-gnu/libcuda.so.1 libcuda.so.1

  

四、安装nvidia-docker2

官网安装教程:https://github.com/NVIDIA/nvidia-docker

# If you have nvidia-docker 1.0 installed: we need to remove it and all existing GPU containers
docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f
sudo apt-get purge -y nvidia-docker # Add the package repositories
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update # Install nvidia-docker2 and reload the Docker daemon configuration
sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd # Test nvidia-smi with the latest official CUDA image
docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi

测试是否成功:

docker run -it --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi

nvidia-docker2配置与NVIDIA驱动安装的更多相关文章

  1. Ubuntu18.04 NVIDIA显卡驱动 安装大全

    离线安装NVIDIA显卡驱动 费了一天的劲,走了好多的坑,最主要的原因是gcc版本的问题,一定要用最新版本的gcc!!! 1)官网下载显卡驱动 2)apt 下载gcc包及其依赖包,可用apt-cach ...

  2. thinkpad x260在ubuntu 14.04lts wifi驱动安装 ( ubuntu iwlwifi驱动 都可行 )

    实验室要新购笔记本x260,用于ROS调试,装上ubuntu-ros后,发现wifi不支持. 查阅大量资料,如下: http://www.ubuntu.com/certification/hardwa ...

  3. ubuntu14.04安装、NVIDIA显卡驱动安装及CUDA8.0、Cudnn5.1的环境搭建

    安装环境:hp-Z440工作站.64位Ubuntu14.04(64位Ubuntu16.04).Cuda8.0.Cudnn5.1.Nvidia GeForce GT 705.Tesla K40c 本文可 ...

  4. 联想Y7000,I5-9300H+Nvidia GTX 1050, kali linux的nvidia显卡驱动安装

    转载自,Linux安装NVIDIA显卡驱动的正确姿势 https://blog.csdn.net/wf19930209/article/details/81877822#NVIDIA_173 ,主要用 ...

  5. Ubuntu系统---NVIDIA 驱动安装

    Ubuntu系统---NVIDIA 驱动安装 第一次安装“NVIDIA 驱动”,小小的激动,因为终于可以玩GPU了.预想一块GPU,盼望太久,差点放弃,感谢J姐让我捡个漏.但是,第一次新的试错过程,网 ...

  6. deepin 15.10.1 GTX1060 NVIDIA 驱动安装,双屏显示问题记录

    有一段时间没有用Linux了.由于买了个4k的戴尔显示屏,在deepin系统上无法用,从昨晚到现在,总于解决了我的问题! 问题1:无法直接在深度的显卡驱动管理器哪里直接切换,网上看到很多人都有这个问题 ...

  7. Y7000 安装ubuntu16.04.6 的tips :禁用nouveau 、Wifi 问题 、nvidia 驱动安装

    由于最近要跑DeepLearning 所以在自己的Y7000上装一个Ubuntu ,自己碰了好多壁 写下来以防止自己忘掉以便后续再用! 配置:i7-8750H +GeForce GTX 1050Ti ...

  8. Linux Nvidia显卡驱动安装

    1 概述 因为某些需要需要在Linux上安装显卡驱动,这里记录一下安装过程. 2 环境 Manjaro RTX 2060 3 下载驱动安装包 到官网上搜索下载即可,可以戳这里: 选择自己的显卡型号即可 ...

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

    在安装GPU环境下的软件工具,特别是CUDA/CUDNN等,一定要先把GPU环境搭建好. NVIDIA驱动安装会遇到各种问题,真希望黄教主可以将各个工具如何安装使用讲解的更加细致.清楚一些,有时候按照 ...

  10. NVIDIA 驱动安装(超详细)

    目录 1. 删除原有驱动 2. 安装依赖 3. 禁用nouveau驱动: 4. reboot 5. 获取kernel source (important) 6. 关掉x graphic 服务 7. 安 ...

随机推荐

  1. RocketMQ 启动停止命令

    1.rocketmq的启动   进入rocketMQ解压目录下的bin文件夹 启动namesrv服务:nohup sh bin/mqnamesrv &  日志目录:{rocketMQ解压目录} ...

  2. jquery对form表单复杂(多个)条件的判断验证

    //按钮先执行验证再提交表 $(document).ready(function(){ // 点击查看图片 $('.nyroModal').nyroModal(); //按钮先执行验证再提交表单 $( ...

  3. appium---第四个脚本,进入app,有权限弹窗的方法

    1.以淘宝为例:进入首页,会弹出好几个权限弹窗 无法使用id定位 用xpath定位

  4. Codeforces 1045A Last chance 网络流,线段树,线段树优化建图

    原文链接https://www.cnblogs.com/zhouzhendong/p/CF1045A.html 题目传送们 - CF1045A 题意 你有 $n$ 个炮,有 $m$ 个敌人,敌人排成一 ...

  5. BZOJ1823 [JSOI2010]满汉全席 2-sat

    原文链接http://www.cnblogs.com/zhouzhendong/p/8125944.html 题目传送门 - BZOJ1823 题意概括 有n道菜,分别可以做成满式和汉式(每道菜只能做 ...

  6. Shiro笔记(六)Shiro标签的使用

    Shiro标签的使用 引入标签库 <%@taglib prefix="shiro" uri="http://shiro.apache.org/tags"% ...

  7. 使用sparksql往kafka推送数据

    一.相关配置参数 1.同级目录resource文件夹下配置 brokers_list=kafkaxxx02broker01:9092,kafkaxxx02broker02:9092,kafkaxxx0 ...

  8. hdu 3001 Travelling (三进制)【状压dp】

    <题目链接> 题目大意: 给出n个点和m条边,求经过所有点所需的最小花费,每个点最多经过两次. 解题分析: TSP问题类型,由于此题每个点有三种状态,所以采用三进制状态压缩,0.1.2 分 ...

  9. STRING DELIMITED BY SIZE

    The following COBOL program depicts the use of  STRING DELIMITED BY SIZE                 IDENTIFICAT ...

  10. SpringBoot启动banner更改

    这篇文章的开始先给大家看一个图片 用过或者看过springboot的人都知道,这就是springboot启动的banner,这一篇介绍如何自定义springboot的启动bannner. 先介绍一个可 ...