容器内安装驱动后,删除容器失败
2025/04/28
32
问题信息
问题来源 | 产品大类 | 产品子类 | 关键字 |
---|---|---|---|
现网 | 安装部署 | 驱动固件 | 容器、失败 |
问题现象描述
在Atlas 200I A2 加速模块、Atlas 200I SoC A1 核心板、Atlas 300I Pro 推理卡、Atlas 300V Pro 视频解析卡、Atlas 300I Duo 推理卡、Atlas 300V 视频解析卡、Atlas 300T 训练卡(型号:9000)、Atlas 300T Pro 训练卡(型号:9000)、Atlas 800 训练服务器(型号:9000)、Atlas 800 训练服务器(型号:9010)、Atlas 900 计算节点、Atlas 900T RAK 计算节点、Atlas 200T A2 Box16 异构子框、Atlas 800T A2 训练服务器、Atlas 800I A2 推理服务器、Atlas 900 A2 PoD 集群基础单元产品容器内使用--docker命令安装驱动,安装成功后退出容器,删除容器失败,出现如下报错信息。
[root@localhost new_version_package]# docker rm 38b6090e5803 Error response from daemon: container 38b6090e58034fa17ba925239a00014ea01ea4a173b8f7f255f6f1ba3fc18542: driver "overlay2" failed to remove root filesystem: unlinkat /var/lib/docker/overlay2/2b1575db553b0d6129ba47d3e661465056347e2b558ee08c9215dc7b2f4e0dc1/diff/usr/local/Ascend/driver/tools/ascend_upgrade_crl.sh: operation not permitted
原因分析
在容器内安装驱动后,驱动包会锁定安装目录,导致退出容器后删除容器失败。
解决措施
- 执行如下命令,查看使用的容器ID。
docker ps -a
回显信息如下:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 38b6090e5803 84282c80cdda "/bin/bash" About a minute ago Exited (0) 5 seconds ago pensive_shannon
- 执行如下命令,查看容器路径。
命令:docker inspect CONTAINER ID | grep UpperDir
示例:docker inspect 38b6090e5803 | grep UpperDir
回显信息如下:"UpperDir": "/var/lib/docker/overlay2/2b1575db553b0d6129ba47d3e661465056347e2b558ee08c9215dc7b2f4e0dc1/diff",
- 执行如下命令,增加容器路径权限。
命令:chattr -iR UpperDir
示例:chattr -iR /var/lib/docker/overlay2/2b1575db553b0d6129ba47d3e661465056347e2b558ee08c9215dc7b2f4e0dc1/diff
- 执行如下命令,删除容器。
命令:docker rm CONTAINER ID
示例:docker rm 38b6090e5803