Permissão negada ao gravar um arquivo em var / www apesar de me adicionar ao grupo de usuários

2 respostas

2

Para essa situação, você precisa adicionar o set-group-ID bit no diretório /var/www/xyz para que os diretórios recém-criados herdem o grupo do pai.

chmod g+s /var/www/xyz

Veja man 2 chmod

  

S_ISGID (02000) set-group-ID (defina o ID do grupo efetivo do processo   execve (2); bloqueio obrigatório, conforme descrito em fcntl (2); pegue um novo   grupo de arquivos do diretório pai, conforme descrito em chown (2) e   mkdir (2))

Veja os comentários para a resposta da postagem referida.

Editar após comentário:

Se você adicionou o setgid bit no diretório pai após o subdiretório foi criado:

  File var/www/dodge' 
  Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 700h/1792d Inode: 1445503 Links: 8
Access: (2775/drwxrwsr-x) Uid: ( 33/www-data) Gid: ( 33/www-data)
Access: 2013-07-16 16:29:21.434531583 +0530
Modify: 2013-07-16 14:07:46.482782580 +0530
Change: 2013-07-16 16:28:04.622533850 +0530 <---added setgid

mas o subdiretório foi criado antes disso:

  File: /var/www/dodge/codes' 
  Size: 4096 Blocks: 8 IO Block: 4096 directory 
Device: 700h/1792d Inode: 1446465 Links: 2 
Access: (0775/drwxrwxr-x) Uid: ( 1000/ wq) Gid: ( 1000/ wq) 
Access: 2013-07-16 15:16:15.554661170 +0530 
Modify: 2013-07-16 15:13:42.698665686 +0530 
Change: 2013-07-16 15:13:42.698665686 +0530 <---before ctime above

o setgid bit funciona quando você cria novos arquivos e diretórios. Não funcionará para nenhum que já tenha sido criado. Portanto, o diretório codes ainda é de propriedade de wq e group wq , e o outro usuário não tem permissão para criar arquivos lá; é por isso que você recebe o mesmo erro de antes. Ou chown do subdiretório para definir o grupo correto ou excluí-lo e recriá-lo.

chown :group /var/www/dodge/code
    
por Grzegorz Żur 16.07.2013 / 12:36
1

Resolvido esse problema adicionando a pasta xyz ao grupo var-www . Assim, agora eu sou capaz de escrever para os arquivos nas sub-pastas também

    
por vinit 19.07.2013 / 16:36