温馨提示×

linux mount绑定如何做

小樊
49
2026-10-14 03:30:33
栏目: 智能运维

在 Linux 中,**mount 绑定(bind mount)**可以把一个目录(或文件)挂载到另一个位置,使其在两个路径下都能访问。


一、基本用法(目录绑定)

1️⃣ 挂载目录

mount --bind /源目录 /目标目录

示例:

mkdir -p /mnt/data
mount --bind /home/user/data /mnt/data

之后:

  • /home/user/data
  • /mnt/data

指向同一份数据


2️⃣ 查看绑定挂载

mount | grep bind

或

cat /proc/mounts | grep bind

3️⃣ 卸载绑定挂载

umount /mnt/data

二、文件绑定(文件级 mount)

mount --bind /etc/nginx/nginx.conf /opt/nginx/nginx.conf

⚠️ 注意:

  • 两边必须是已存在的文件
  • 不是软链接

三、只读绑定挂载(常用)

mount --bind /src /dst
mount -o remount,ro /dst

或用 mount 一次完成(某些发行版支持):

mount --bind -o ro /src /dst

四、开机自动绑定(/etc/fstab)

格式:

/源目录  /目标目录  none  bind  0  0

示例:

/home/user/data  /mnt/data  none  bind  0  0

只读:

/home/user/data  /mnt/data  none  bind,ro  0  0

五、常见使用场景

✅ 容器/服务访问宿主机目录
✅ chroot 环境共享目录
✅ 日志、配置统一管理
✅ 临时暴露只读目录


六、与软链接的区别

对比项 bind mount 软链接
跨文件系统 ✅ ✅
程序看到的是真实路径 ❌(看到的是挂载点) ✅
权限/挂载控制 ✅ ❌
容器内可用 ✅ ⚠️ 有限

如果你有 Docker / LXC / systemd / 特定发行版 场景,我可以给你更针对性的示例。

0 踩