Existem inúmeras possibilidades para que /Users/someuser/work/source/XXX
aponte onde você quiser no Linux:
-
Use links simbólicos - fazendo algo como:
ln -s /wherever/you/want /Users/someuser/work/source/XXX
faria com que
/Users/someuser/work/source/XXX
aparecesse como um diretório. Se algum software viajasse para lá e / ou gravasse arquivos lá, eles acabariam em/wherever/you/want
. -
Monte outro sistema de arquivos em
XXX
, ou seja,mount /dev/something /Users/someuser/work/source/XXX
Desta forma, você terá seu dispositivo / dev / something montado no diretório no qual o aplicativo escreveria.
-
Faça um "bind mount", isto é, religue uma parte de algum outro sistema de arquivos (já montado) para
XXX
:mount -o bind /wherever/you/want /Users/someuser/work/source/XXX
Funciona muito como um link simbólico, mas é muito mais difícil de detectar por aplicativo. O aplicativo pode verificar facilmente se o diretório de destino é um link simbólico e recusar gravar lá, enquanto o método de montagem de ligação fornece um diretório normal, mas seu conteúdo seria
-
Use um sistema de arquivos semelhante a unionfs, como unionfs ou aufs - desta forma você pode "unificar", ou seja, montar simultaneamente vários sistemas de arquivos em um diretório (ou seja,
XXX
) -
Jogue alguns truques com LD_PRELOAD e bibliotecas que substituem métodos, como
open()
,fopen()
, etc - o mais proeminente é fusível , ou seja, você pode querer verificar sistemas de arquivos semelhantes a Union para FUSE .