温馨提示×

如何卸载linux overlay

小樊
46
2026-09-06 15:18:56
栏目: 智能运维

在 Linux 中卸载 overlay(overlayfs) 通常是指卸载一个使用了 overlay 文件系统的挂载点,而不是“卸载 overlay 这个内核模块”(一般不建议卸载内核模块)。

下面按常见场景说明。


一、查看 overlay 挂载点

先确认 overlay 挂载在哪里:

mount | grep overlay

或:

findmnt -t overlay

示例输出:

/var/lib/docker/overlay2/... /merged overlay ...

二、常规卸载 overlay 挂载点

如果 overlay 没有被使用,可以直接卸载:

umount /path/to/overlay/mountpoint

例如:

umount /mnt/overlay

✅ 如果成功,说明已卸载。


三、遇到 “device is busy” 的解决方法

1. 查看谁在使用

lsof +D /path/to/overlay/mountpoint

或:

fuser -m /path/to/overlay/mountpoint

2. 退出相关进程

  • 退出 shell
  • 停止 Docker / 容器
  • 停止相关服务

3. 强制卸载(不推荐,但可用)

umount -l /path/to/overlay/mountpoint

-llazy unmount,立即从文件系统树移除,但等进程释放后才真正卸载。


四、如果是 Docker 的 overlay2

⚠️ 不要手动 umount Docker 的 overlay2

正确方式:

docker stop <container>
docker rm <container>

或清理未使用资源:

docker system prune -a

五、如果你是指“禁用 overlay 文件系统”

临时不加载(仅未使用时)

lsmod | grep overlay

一般 overlay 是内置的:

cat /proc/filesystems | grep overlay

如果是模块:

modprobe -r overlay

⚠️ 很多系统 overlay 是内核内置,无法卸载


六、总结

目的 做法
卸载 overlay 挂载 umount /mountpoint
卸载被占用 umount -l
Docker overlay 停容器,不要手动 umount
禁用 overlay 通常不必要,也不推荐

如果你能补充:

  • Docker / Kubernetes / 手动 mount
  • 具体报错信息

我可以给你更精确的命令。

0