Você pode escrever um script que seja executado pelo diretório B que crie um link para cada arquivo no diretório A. Mas, se você quiser mesclar as duas pastas, recomendo usar uma sobreposição sistema de arquivos como aufs . Eu mesmo uso para tal tarefa.
Use o seguinte comando mount (você pode ter que instalar as ferramentas para gerenciar aufs):
mount -t aufs -o dirs=/path/to/dirA/=rw:/path/to/dirB/=ro none /path/to/mountpoint
Explicação do comando mount:
-
-t aufs: define o tipo de sistema de arquivos como aufs -
dirs=/path/to/dirA/=rw:/path/to/dirB/=ro: esses são os diretórios que você deseja mesclar, separados por:. Também pode ser um terceiro diretório, se você quiser. Observe quedirAé usado como pasta readwrite (rw) edirBcomo readonly (ro). Isso significa que, quando você escreve nesse ponto de montagem, o sistema de arquivos grava emdirA, não emdirB. Existem muitas opções , como o sistema de arquivos subjacente deve se comportar em caso de leitura ou gravação. Eu recomendo ver através da página de manual. -
none: este é o dispositivo. Por ser um pseudo sistema de arquivos, não há dispositivo. -
/path/to/mountpoint: o caminho onde você deseja montar o sistema de arquivos.