como faço para verificar se uma montagem de ligação no linux é privada ou compartilhada?

7

O comando mount nos permite fazer uma montagem de ligação compartilhada, escrava, compartilhada + escrava, privada ou não-conectável, no entanto, não consegui calcular um determinado ponto de montagem que é o tipo de subárvore raiz na montagem de ligação , escravo, privado, compartilhado + escravo ou unbindable). Como faço para descobrir se uma montagem de ligação é escrava ou privada?

    
por anaken78 08.04.2016 / 16:31

3 respostas

7

A resposta está na mount(8) página de manual também:

Use findmnt -o TARGET,PROPAGATION to see the current propagation flags.

Um exemplo:

$ 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

Verifique a findmnt página de manual para outras opções.

Para referência, esses exemplos estão usando:

$ findmnt --version
findmnt from util-linux 2.27.1
    
por 09.04.2016 / 12:51
5

Alternativamente à resposta do dawud , você pode perguntar diretamente ao kernel assim:

# 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
[...]

Você pode ver no sétimo campo que meu sistema de arquivos /sys é compartilhado (assim como /proc ).

Além disso, é e no grupo de pares 7 (montagens no mesmo grupo de pares propagam eventos entre si).

O número em /proc/1/mountinfo é o PID de um processo, porque os processos podem estar em diferentes namespaces de montagem e "ver" resultados diferentes. Você pode querer usar outro PID, ou seja, se estiver trabalhando com contêineres. Caso contrário, 1 é simples e direto.

As montagens compartilhadas são disponíveis desde o Linux versão do kernel 2.6.15.

    
por 12.09.2016 / 20:37
-3

São 2 visualizações dos mesmos dados, modificações em uma refletem na outra

mount --bind / source / destrination

link

mount binds são apenas uma maneira de ordenar uma visão do sistema de arquivos de acordo com sua própria preferência

    
por 08.04.2016 / 16:46