001
- Problem
在编译Linux内核过程中,执行sudo apt-get update
指令时,出现以下问题:
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 3B4FE6ACC0B21F32 - Solution
这是因为更换三方源没有对应的Key。直接执行如下命令,比如我没有3B4FE6ACC0B21F32
,就需要执行
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
002
- Problem
Docker环境里已经安装opencv-python,但运行import cv2
时,出现以下错误:
ImportError: libGL.so.1: cannot open shared object file: No such file or directory - Solution
出现这个错误,是因为之前docker里安装的opencv无法使用。我之前是用这条命令安装的:pip3 install opencv-python
,这条命令安装的opencv在本地的环境中可以使用,但无法在docker里使用。根据经验,有以下两种解决方案:
1)一般来说,是镜像Linux内核中缺少了libopencv-dev
环境,可以先行安装该环境后再编译镜像。
sudo apt-get install -y libopencv-dev
但是,当安装libopencv-dev
环境过程中再次出现无法解决的问题时,可尝试安装opencv-python-headless
包;
2)可以先把之前用上面命令安装的opencv删除,然后用这条命令安装opencv-python-headless
:
pip3 uninstall opencv-python
pip3 install opencv-python-headless
003
- Problem
想要在Docker容器中运行深度学习模型时,出现了来自daemon的错误响应:
docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]]. - Solution
这很大可能是因为Ubuntu中没有安装nvidia-docker2
,按照以下指令在Ubuntu机器上安装即可
# 设置变量
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
# 安装公钥
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
# 获取list
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list
# 更新, 并安装nvidia-docker2
sudo apt-get update
sudo apt-get install -y nvidia-docker2
# 重启
sudo systemctl restart docker