Forçando o usuário em ambas as direções usando bindfs

1

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

    
por Mariano Martinez Peck 17.02.2015 / 22:09

1 resposta

1

Se eu entendi a pergunta corretamente, confira o --create-for-user e o --create -with-perms opções .

    
por 18.02.2015 / 02:24