Docker 文件系统没有打开的文件但无法卸载

Docker 文件系统没有打开的文件但无法卸载

/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不安装。

相关内容