Docker服务进程僵尸持有设备映射程序托pipe设备
我使用Docker(1.12.1)运行RHEL(内核4.1.12),我的dockerd
服务dockerd
成为一个带有PID 412
的僵尸[dockerd] <defunct>
# ps -a | grep dockerd 1 412 412 412 ? -1 Zsl 0 23:28 [dockerd] <defunct>
并且它保存资源,特别是设备251:4 ( /dev/dm-4
),该设备是被pipe理的设备映射器:
# dmsetup ls docker-251:0-6815748-pool (251:1) docker-251:0-6815748-e97dd950.......59a691feaf6 (251:4) # lsof | grep 251,4 dockerd 412 6844 root 1257u BLK 251,4 0t0 2439769 /dev/dm-4
因此,删除thin
入口docker-251:0-6815748-e97dd950.......59a691feaf6
失败
# dmsetup remove docker-251:0-6815748-e97dd950.......59a691feaf6 device-mapper: remove ioctl on docker-251:0-6815748-e97dd950.......59a691feaf6 failed: Device or resource busy Command failed
除了重新启动整个系统之外,还有关于如何清理Docker服务(例如,所有DM条目)的剩余部分的build议?
僵尸进程是否真的有可能存在资源?