Quão bem o bindfs se comporta, quando o usuário faz alguma modificação no diretório inferior diretamente (ou seja, não através do bindfs)?
(Motivação: Eu assumi que não seria uma boa ideia envolver um diretório com bindfs, no momento em que esse diretório estava sendo escrito. Mas isso me deixou curioso.
Em teoria, eu também estaria interessado se houvesse uma resposta para outro sistema de arquivos FUSE ou um baseado em princípios gerais do FUSE, mas não consigo pensar em uma boa maneira de perguntar isso aqui).
As montagens de ligação do kernel - mount --bind
- compartilham o cache VFS de alguma forma. Esse é um exemplo em que as modificações simultâneas são totalmente suportadas, até onde eu sei.
Um exemplo em que a modificação de um sistema de arquivos de apoio não é suportada é o sistema de arquivos do kernel overlayfs
.
Alterações nos sistemas de arquivos subjacentes enquanto parte de um sistema de arquivos de sobreposição montado não são permitidas. Se o sistema de arquivos subjacente for alterado, o comportamento da sobreposição é indefinido, embora não resulte em travamento ou impasse.
Parece que há menos problemas com isso para bindfs do que para overlayfs.
Basicamente implica que há suporte completo, exceto por alguma limitação do MacFuse.
https://bindfs.org/docs/bindfs.1.html
Eu suspeito fortemente que isso está deixando de mencionar algo, porque também há um cache para atributos de arquivo (por exemplo, permissões) . O FUSE também armazena em cache as pesquisas de diretório. Dito isto, o tempo de vida padrão desses caches no FUSE, por exemplo
attr_timeout
, parece ser muito curto, por exemplo, 1 segundo .