You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RHEL卸载Docker EE后删除/var/lib/docker目录遇设备占用错误求助

解决RHEL卸载Docker EE时/var/lib/docker目录删除失败(Device or resource busy)的问题

我来帮你搞定这个卸载时遇到的「设备或资源忙」问题,这是卸载Docker时很常见的状况——本质是还有Docker相关的进程在运行,或者它的插件/容器文件系统还处于挂载状态,导致你无法直接删除目录。按照下面的步骤一步步操作就能解决:

第一步:彻底停止所有Docker相关服务与进程

首先要确保Docker的主服务、socket服务以及所有残留进程都被终止:

  • 停止Docker服务:
    sudo systemctl stop docker
    
  • 停止Docker socket服务(这个经常被忽略,但会占用相关资源):
    sudo systemctl stop docker.socket
    
  • 检查并清理残留进程:
    先列出所有和Docker相关的进程:
    sudo ps aux | grep docker
    
    找到输出里的进程ID(PID),用强制终止命令杀掉:
    sudo kill -9 <进程PID>
    
    注意:只杀掉那些明确和docker、containerd相关的进程,别误删系统进程。

第二步:卸载Docker相关的挂载文件系统

出现「Device or resource busy」很大概率是因为插件的rootfs被挂载了,我们需要先卸载这些挂载点:

  • 先查看当前和/var/lib/docker相关的挂载项:
    sudo mount | grep /var/lib/docker
    
    你会看到类似你报错里的/var/lib/docker/plugins/xxx/rootfs/dev这类挂载路径。
  • 对每个挂载路径执行卸载命令:
    sudo umount /var/lib/docker/plugins/11d2935e42e055dda59b62977de0c00bb18d820c6eccdff964f232276a6e7cd7/rootfs/dev
    
    如果卸载时还是提示忙,可以用lsof <挂载路径>查看哪个进程在占用它,杀掉对应进程后再重新卸载。

第三步:重新尝试删除/var/lib/docker目录

现在所有占用资源的进程和挂载都清理完毕了,执行删除命令:

sudo rm -rf /var/lib/docker

这次应该就能顺利删除整个目录了。

可选:彻底清理Docker EE的安装包

如果你还想把系统里的Docker EE安装包也彻底移除,可以执行:

sudo yum remove docker-ee docker-ee-cli containerd.io

内容的提问来源于stack exchange,提问作者aman_novice

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:03:40