É possível no linux ter um diretório que contenha todo o conteúdo de outro diretório (de maneira somente leitura), mas você é capaz de escrever no diretório sem afetar o diretório 'pai'.
Para fornecer um contexto do que estou tentando alcançar, tenho um aplicativo que será executado para todos os usuários. Este aplicativo faz o download de vários "pacotes" para a pasta para a qual desejo ter essa funcionalidade. Cada um dos pacotes tem sua própria pasta única (que é um hash do conteúdo, portanto deve ser exclusivo por pacote - mas vamos supor que a colisão de hash é evitada com o software). No entanto, existem muitos pacotes, eu sei que todos os usuários vão querer adicionar e alguns que todos vão precisar. Se cada usuário preenche seu diretório com os mesmos pacotes, isso vai consumir espaço de forma não intencional, particularmente com os pacotes básicos que eu sei que todos os usuários terão.
A maneira que eu vejo é que quando o usuário escreve um arquivo você pode escrever na pasta mas ao ler da pasta ela se funde com a pasta pai OU o usuário pode ter uma pasta virtual de algum tipo que combina uma leitura -only e ler-escrever diretório com gravações indo automaticamente para o diretório de leitura-gravação (suponho um pouco semelhante ao estilo do Windows 7 Bibliotecas).
A outra opção que consigo pensar é completamente diferente da minha solicitação inicial, mas funcionaria tão bem, talvez até melhor, já que não exigiria que eu trabalhasse manualmente quais pacotes se sobrepõem entre os usuários, seria se houvesse um sistema de arquivos que pode ser usado para fornecer deduplicação. No entanto, existem problemas de desempenho que eu posso ver com isso - mas se você tem alguma idéia ou recursos que você pode me indicar para fazer isso, vou dar uma olhada. Não tenho certeza de como isso funcionaria, porque sei que, se uma pasta solicitada tiver o mesmo nome, ela não precisará ser baixada, mas, com a desduplicação, ela precisaria fazer o download do pacote para se duplicar. em si.
Isso é possível no Linux e, em caso afirmativo, quais recursos você pode fornecer para eu examinar as opções?