我如何检查Linux上的绑定挂载是私有的还是共享的?

mount命令允许我们创build一个绑定挂载共享,从属,共享+奴隶,私有或不可绑定,但是,我无法find一个给定的挂载点是什么types的子树根绑定挂载(共享,奴隶,私人的,共享的+奴隶或不可取的)。 如何find一个绑定挂载是一个奴隶或私人?

答案也在mount(8)手册页中:

使用findmnt -o TARGET,PROPAGATION来查看当前的传播标志。

一个例子:

 $ findmnt -o TARGET,PROPAGATION /opt TARGET PROPAGATION /opt shared $ sudo mount -o bind /opt /mnt $ sudo mount --make-slave /opt $ findmnt -o TARGET,PROPAGATION /opt TARGET PROPAGATION /opt private,slave $ sudo umount /mnt $ findmnt -o TARGET,PROPAGATION /opt TARGET PROPAGATION /opt private 

查看findmnt手册页以获取其他选项。

作为参考,这些例子正在使用:

 $ findmnt --version findmnt from util-linux 2.27.1 

或者dawud的答案,你可以直接问这样的内核:

 # cat /proc/1/mountinfo 14 19 0:14 / /sys rw,nosuid,nodev,noexec,relatime shared:7 - sysfs sysfs rw 15 19 0:3 / /proc rw,nosuid,nodev,noexec,relatime shared:12 - proc proc rw [...] 

你可以从第7个字段看到我的/sys文件系统是共享的 (就像/proc )。

另外,它和对等组7(安装在同一对等组中)相互传播事件。

/proc/1/mountinfo中的/proc/1/mountinfo是进程的PID,因为进程可以位于不同的安装名称空间中并“看到”不同的结果。 你可能想要使用另一个PID,即如果你正在使用容器。 否则, 1简单明了。

从Linux内核版本2.6.15开始, 可以使用共享挂载。

这是相同数据的两个视图,其中一个反映在另一个中

mount –bind / source / destrination

https://unix.stackexchange.com/questions/198590/what-is-a-bind-mount

安装绑定只是将文件系统视图按照自己的喜好sorting的方式