docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > 解决unable to remove volume问题

如何解决报错unable to remove volume问题

作者:ghostwritten

这篇文章主要介绍了如何解决报错unable to remove volume问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

问题

$ docker volume rm 92ba8612_zxtest001_LOG 
Error response from daemon: unable to remove volume: remove 92ba8612_zxtest001_LOG: VolumeDriver.Remove: exec fail:exit status 5;out:  Logical volume data-2-2_HDD_VG/92ba8612_zxtest001_LOG contains a filesystem in use.

解决方法

1.尝试先删除挂载的本地目录

$ rm -rf 92ba8612_zxtest001_LOG/
$  docker volume rm 92ba8612_zxtest001_LOG 
92ba8612_zxtest001_LOG

2.如果还是无法删除

$ lsof |grep 92ba8612_zxtest001_LOG
$ for i in `lsof  |grep 92ba8612_zxtest001_LOG | awk '{print $2}'`;do kill -9 $i;done

3.如果还是无法删除

执行:

lvremove /dev/data-2-1_HDD_VG/d728336a_wbLoCtovlFE001_DAT   Logical volume data-2-1_HDD_VG/d728336a_wbLoCtovlFE001_DAT contains a filesystem in use.

如果还是无法删除:

查看是否有用户正在使用、打开
$ lvdisplay /dev/data-2-1_HDD_VG/d728336a_wbLoCtovlFE001_DAT |grep open
查看是否有进程号正在使用
$ fuser -kuc /dev/data-2-1_HDD_VG/d728336a_wbLoCtovlFE001_DAT
如果有进程号 ,例如是1726
$ kill -9 1726
删除逻辑卷
$ lvremove /dev/data-2-1_HDD_VG/d728336a_wbLoCtovlFE001_DAT   Logical volume data-2-1_HDD_VG/d728336a_wbLoCtovlFE001_DAT

4.如果还是无法删除

$ lvchange -an /dev/data-2-1_HDD_VG/d728336a_wbLoCtovlFE001_DAT
$ lvremove -f   /dev/data-2-1_HDD_VG/d728336a_wbLoCtovlFE001_DAT

5.如果还是无法删除

$ echo 1 > /proc/sys/vm/drop_caches
$ echo 2 > /proc/sys/vm/drop_caches
$ echo 3 > /proc/sys/vm/drop_caches
$ docker volume rm d728336a_wbLoCtovlFE001_DAT

6.如果还是无法删除(大部分可以删除)

$ docker kill `docker ps -q`
$ sysetemctl restart docker
$ docker volume rm d728336a_wbLoCtovlFE001_DAT
$ docker start `docker ps -aq`

7.如果还是无法删除

比如僵尸了,重启。

$ reboot
.....
$ docker volume rm  d728336a_wbLoCtovlFE001_DAT

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文