Suponho que quando você diz que myprogram
escreve em um arquivo fixo, significa que você não pode modificar este programa para que ele grave em outro arquivo (talvez você não tenha o código-fonte).
Também tenho certeza de que o que você deseja fazer não é possível com o NFS. De qualquer forma, a solução que você mencionou usando diferentes pontos de montagem funcionará, mas não é muito prática se você tiver muitos nós.
Seu programa grava o arquivo somefile.txt
usando um caminho absoluto ou apenas o arquivo no diretório atual? Se estiver no diretório atual, você pode apenas criar alguns subdiretórios como:
/home/sharedfs/somedir/nodeN/somefile.txt
e execute myprogram
no diretório correspondente:
cd /home/sharedfs/somedir/nodeN
./myprogram
Em seguida, em cada nó (nodeN), use um link simbólico em um diretório local, como algo assim:
ln -s /home/sharedfs/somedir/nodeN/somefile.txt /usr/local/somefile.txt
O arquivo somefile.txt
pode ser acessado em cada nó com o mesmo nome, mas aponta para um arquivo diferente de acordo com o nó. Se você quiser acessar o arquivo de outro nó, isso pode ser feito através do sistema de arquivos montado.