/var/lib/docker
我使用 Ubuntu 14.04 安装了一个 ext4 文件系统。
我跑过去umount /var/lib/docker
得到:
umount: /var/lib/docker: device is busy.
我已经关闭了 docker,service docker stop
并且ps aux
没有显示任何进程。
奇怪的是,fuser -M /var/lib/docker
和都lsof +f -- /var/lib/docker
没有显示打开文件的进程。
在具有相同设置的 40 多个其他服务器上不会发生这种情况,我刚刚注意到了这一点。
重新启动解决了这个问题 - 好奇是否有人知道发生了什么,或者有任何其他方法来调查它是否再次发生。
- Docker (1.11.2) 一直在该 FS 之上使用 aufs 作为其容器的覆盖文件系统 - 但所有容器和 Docker 进程都在
umount
. - 内核详细信息:
Linux node05 4.4.0-38-generic #57~14.04.1-Ubuntu SMP Tue Sep 6 17:20:43 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
可能相关的问题:
更新 - 在另一台服务器上重现
这种情况在具有非常相似的配置的不同服务器上重复出现,在相同的情况下 - 已关闭 docker,但无法关闭,umount /var/lib/docker
因为它“忙”。
和以前一样,fuser
并且lsof
不显示在 docker FS 上打开文件的进程。
mount | grep aufs
显示没有 aufs 文件系统
df -h| grep docker
显示了安装在 /var/lib/docker 目录下的两个 Docker 管理的文件系统(lsof
似乎没有显示这些)。
然而,卸载这两个文件系统并不能解决这个问题。
解决方法
唯一的解决方法仍然是编辑/etc/fstab
以暂时注释掉/var/lib/docker
文件系统,然后重新启动服务器,以便/var/lib/docker
不安装。