Claro que sim. Se você executar o ln -s
você cria um link simbólico, que é um inode apontando para um determinado objeto do sistema de arquivos, que é por que os links simbólicos podem atravessar sistemas de arquivos e os links físicos não podem: hard links não possuem seu próprio inode.
Se você montar um sistema de arquivos com --bind
, crie um segundo ponto de montagem para um dispositivo ou sistema de arquivos.
Se você imaginar um link simbólico como um redirecionamento, visualize um sistema de arquivos --bind
montado para criar outro gateway para os dados.
Links simbólicos e montagens de ligação são um jogo totalmente diferente.
A montagem --bind
parece um pouco mais robusta para mim e provavelmente é um pouco mais rápida do que trabalhar com um link simbólico. Por outro lado, não há inconvenientes sérios no uso do link simbólico, já que o impacto no desempenho será pequeno (se é que existe).
Editar : Eu estive pensando sobre isso, e o impacto no desempenho pode ser um pouco maior do que eu pensava inicialmente. Se você tiver um aplicativo que leia muitos arquivos diferentes, cada novo arquivo aberto exigirá uma leitura extra. Algumas pesquisas aqui sugerem que minha suposição está correta, por isso, se você tiver um aplicativo IO pesado em execução, considere o --bind
option para montar acima da solução de link simbólico.
A razão não é comum, é provavelmente o fato de que um link simbólico é visível em um ls
, enquanto uma montagem de bind é visível apenas ao olhar em / proc / mounts ou / etc / mtab (que é o que a montagem comando, se for executado sem parâmetros). Fora isso, não acho que existam problemas. Eu estaria interessado se houvesse, no entanto.
Adição : outro problema com ln -s
é que, para alguns aplicativos, quando o caminho é desreferenciado, pode ser que o aplicativo seja recusado se "espera" que determinados itens estejam em locais específicos.