Permissões de grupo ineficazes, permissão ainda negada

1

Eu tenho um problema com as permissões do UNIX: Estou trabalhando no Debian Squeeze, e um dos meus scripts, executados pelo www-data , precisa mover um arquivo, 23550.zip , colocado no diretório inicial de outro user, autodo , para um subdiretório na home do usuário ( /home/autodo/.processed ) para marcá-lo como já processado.

Eu tentei alterar a propriedade do grupo de /home/autodo , /home/autodo/23550.zip e /home/autodo/.processed para o grupo www-data para permitir que o usuário www-data mova esse arquivo, mas ele ainda falha dizendo Permission denied , como você pode ver abaixo (como eu sou francês, eu traduzi mensagens em francês de volta para o inglês, embora eu não possa ter certeza de que a tradução é a exibida na versão em inglês desses comandos):

sh-4.1$ ls -lah /home/autodo
total 27M
drwxr-xr-x  3 autodo www-data 4,0K  9 janv. 15:17 .
drwxr-xr-x 88 root   root     4,0K  8 janv. 15:21 ..
-rwxr-xr-x  1 autodo ftpusers 4,8K  5 sept. 23:14 19236.zip
-rwxr-xr-x  1 autodo www-data  26M  9 janv. 14:26 23550.zip
-rwxr-xr-x  1 autodo ftpusers 2,3K  6 janv. 20:44 3194.zip
-rwxr-xr-x  1 autodo ftpusers 1,1M  5 sept. 23:38 53274.zip
-rwxr-xr-x  1 autodo ftpusers  585  6 sept. 00:50 70069.zip
-rwxr-xr-x  1 autodo ftpusers  220 16 nov.  15:10 .bash_logout
-rwxr-xr-x  1 autodo ftpusers 3,2K 16 nov.  15:10 .bashrc
drwxr-xr-x  2 autodo www-data 4,0K  9 janv. 15:16 .processed
-rwxr-xr-x  1 autodo ftpusers  675 16 nov.  15:10 .profile
sh-4.1$ ls -lah /home/autodo/.processed
total 66M
drwxr-xr-x 2 autodo www-data 4,0K  9 janv. 15:16 .
drwxr-xr-x 3 autodo www-data 4,0K  9 janv. 15:17 ..
-rwxr-xr-x 1 autodo ftpusers 3,8K  8 janv. 22:42 100583.zip
-rwxr-xr-x 1 autodo ftpusers 1,7K  9 janv. 02:48 12211.zip
-rwxr-xr-x 1 autodo ftpusers 2,2K  8 janv. 22:43 166273.zip
-rwxr-xr-x 1 autodo ftpusers 424K  8 janv. 22:52 193894.zip
-rwxr-xr-x 1 autodo ftpusers 1,2M  9 janv. 01:13 20662.zip
-rwxr-xr-x 1 autodo ftpusers  59M  9 janv. 00:43 22352.zip
-rwxr-xr-x 1 autodo ftpusers 1,2M  8 janv. 22:42 23704.zip
-rwxr-xr-x 1 autodo ftpusers 214K  9 janv. 02:34 24704.zip
-rwxr-xr-x 1 autodo ftpusers  632  9 janv. 01:17 26360.zip
-rwxr-xr-x 1 autodo ftpusers 2,8K  9 janv. 01:03 31795.zip
-rwxr-xr-x 1 autodo ftpusers 106K  9 janv. 00:11 31797.zip
-rwxr-xr-x 1 autodo ftpusers 413K  9 janv. 00:44 31799.zip
-rwxr-xr-x 1 autodo ftpusers 4,4K  8 janv. 22:30 31803.zip
-rwxr-xr-x 1 autodo ftpusers 2,3K  5 janv. 21:19 3194.zip
-rwxr-xr-x 1 autodo ftpusers  13K  8 janv. 23:33 5705.zip
-rwxr-xr-x 1 autodo ftpusers 2,8K  8 janv. 22:19 5858.zip
-rwxr-xr-x 1 autodo ftpusers  86K  9 janv. 04:34 604.zip
-rwxr-xr-x 1 autodo ftpusers 2,6M  9 janv. 03:34 7091.zip
-rwxr-xr-x 1 autodo ftpusers 3,4K  8 janv. 21:25 7878.zip
-rwxr-xr-x 1 autodo ftpusers 752K  9 janv. 03:37 8127.zip
-rwxr-xr-x 1 autodo ftpusers 6,1K  8 janv. 22:01 84846.zip
-rwxr-xr-x 1 autodo ftpusers 358K  9 janv. 02:42 989.zip
sh-4.1$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data),2000(ftpusers)
sh-4.1$ mv /home/autodo/23550.zip /home/autodo/.processed/
mv: unable to move « /home/autodo/23550.zip » to « /home/autodo/.processed/23550.zip »: Permission denied

Eu também tentei setgid o diretório desse usuário, mas ele também falhou com o mesmo Permission denied e com adduser www-data ftpusers , mas ele ainda falhou com o mesmo erro.

Eu tenho que admitir que estou perdido; Eu sempre achei que as permissões de um grupo que possuía um arquivo eram as mesmas que as do proprietário, mas esse problema contradiz isso, e não posso pensar que possa haver um bug no kernel do Linux, então eu tenho ter perdido algo , mas onde, caramba!

    
por Penegal 09.01.2013 / 15:45

1 resposta

3

desde que um mv esteja modificando tanto o "para o diretório" quanto o "do diretório" você precisa escrever permissões nos arquivos que você está movendo, assim como nos diretórios dos quais você está se movendo.

chmod -R g+w /home/autodo/

isso adicionará recursivamente permissões de gravação para o grupo para tudo em / home / autodo

    
por 09.01.2013 / 15:59