Dando permissões a dois usuários diferentes para um diretório

Dando permissões a dois usuários diferentes para um diretório

Eu tenho um script que às vezes é executado pela web, às vezes pela linha de comando. Quando o script é executado via web, ele é executado via user www-data. Quando é executado via linha de comando, é executado via user jason.

Este script grava em um diretório chamado cache.

  • Se eu chown -R jason cache, posso executar o script como, jasonmas não www-data. Isso faz sentido.
  • Se eu chown -R www-data cache, posso executar o script como, www-datamas não jason. Isso também faz sentido.

Tentei criar um grupo chamado scripts, adicionar meus dois usuários e depois chownentrar cacheem scripts. Não tenho certeza de como fazer a última parte, a chownparte ing. Os documentos de comando do Linux que encontrei on-line para isso são surpreendentemente ruins.

Não sei se expliquei isso muito bem, mas espero que esteja claro o que estou tentando fazer. Qualquer conselho seria apreciado.

Responder1

Normalmente com chown você faria:

usuário chown: grupo (arquivos)

Isso não está funcionando? Você pode verificar e certificar-se de que os arquivos pertencem ao grupo e que o segundo grupo de permissões é pelo menos rx?

-rwxr-xr-x 1 user group 44380 2009-02-10 13:10 junk

Responder2

Você pode usarchgrpouchownao especificar user:groupem vez de apenas user.

Você provavelmente desejará especificar obit SGID, para que a propriedade do grupo seja mantida na criação. Você pode fazer isso usando chmod g+s directory.

Você também precisará garantir que os bits de gravação e execução estejam definidos para o grupo, o que pode ser feito com chmod g+wx.

informação relacionada