Se eu entendi a pergunta corretamente, confira o --create-for-user e o --create -with-perms opções .
Eu tenho um usuário específico do sistema operacional chamado 'app' que executa o Dropbox. O aplicativo é implantado (no mesmo servidor) para vários sites. Mas o Dropbox do usuário "app" tem informações sobre todos os sites.
A dropobox tem um diretório como /home/app/Dropbox/Sites/siteXXX/folder
one para cada site. Toda a pasta do Dropbox é criada automaticamente com o aplicativo do usuário do sistema operacional.
No entanto, cada instalação do aplicativo usa uma pasta interna da caixa de depósito. Por exemplo: /app/sites/siteXXX/siteData/shared/folder
. Cada instância do aplicativo é executada com um usuário do sistema operacional específico, por exemplo, 'siteXXX'. O problema é que eu quero que todo /app/sites/siteXXX/siteData/shared/folder
seja 700
e com propriedade siteXXX
. O aplicativo pode criar ou editar novos arquivos. Além disso, o "aplicativo" do usuário do Dropbox deve continuar a ser capaz de sincronizar ...
Então ... para resolver isso eu instalei bindfs e adicionei isso ao fstab:
/home/app/Dropbox/Sites/siteXXX/folder /app/sites/siteXXX/siteData/shared/folder fuse.bindfs force-user=siteXXX,force-group=siteXXX,perms=0700 0 0
Isso me dá o que desejo em /app/sites/siteXXX/siteData/shared/folder
: 700 e propriedade de siteXXX
.
O problema agora é que, se eu criar um arquivo a partir do aplicativo, ele será criado com o usuário 'siteXXX'. O Dropbox provavelmente será capaz de lê-lo (porque a maioria dos arquivos são lidos por padrão). Mas não será provável atualizá-lo se houver versões mais recentes, já que o arquivo poderia ter sido criado com o 644 e o Dropbox estiver sendo executado com o usuário do SO 'app'.
Desculpe se a explicação é um pouco confusa. Existe alguma solução para isso?
Existe uma maneira de manter o /home/app/Dropbox/Sites/siteXXX/folder
original com o usuário "aplicativo", não importa o quê?
Agradecemos antecipadamente
Se eu entendi a pergunta corretamente, confira o --create-for-user e o --create -with-perms opções .