Queria dar mpez0 a +1 especificamente, por sua resposta "Você precisa do grupo" x "bit definido no diretório para permitir pesquisas de grupo. As permissões" rw- "permitem abrir um arquivo dado seu nome (r) ou criando um arquivo (w), mas não listando ou pesquisando os arquivos (x). "
É tão fácil esquecer, e sua solução está enterrada no meio. Este é definitivamente um problema para novos usuários de Linux com relação a permissões de arquivos / diretórios para usuários e grupos.
Tudo o que Avery disse estava certo no dinheiro, mais uma vez gostaria de poder lhe dar um +1 também.
Figura outro exemplo mais detalhado pode ajudar os novos usuários do Linux ( não procurando por nenhum crédito, apenas fornecendo outro exemplo de clareza ). No meu próprio computador, eu queria criar um usuário adicional para um projeto de desenvolvimento específico. Estava testando alguns problemas de SSH, SFTP entre minha máquina e um servidor co-localizado na web. Recebi o mesmo erro "Permission denied" depois de configurar tudo ... e sim, ele parecia correto, exceto pelo problema de pesquisa com base nas permissões para outras que o mpez0 apontou.
Nota: Para novos usuários do Linux, as permissões são usuário, grupo, outro ou rwx, rwx, rwx, respectivamente, e ficariam assim
drwxr-xr--
user has read + write + execute, rwx
group has only read and execute, r-x
other has only read acces r--
Para 'other', somos lembrados de que NÃO é suficiente para localizar / procurar o diretório, portanto, a mensagem de erro.
Aqui está o que eu fiz, (encontrei a mensagem de erro na etapa 6)
1) criou um usuário, hoiuser (para ver informações do usuário, você pode usar o dedo cmd, "finger hoiuser" ou ler o arquivo 'cat / etc / passwd')
2) criou um grupo, hoidevs (adicionado usuário "hoiuser" ao grupo)
root@zareason-breeze:/etc# cat group | grep hoidevs
hoidevs:x:1010:userz,hoiuser
Lembre-se de que você precisa fazer logoff e fazer login novamente para que as novas permissões de "grupo" sejam associadas à ID da conta.
3) chgrp hoidevs para o diretório / home / userz / data / Sites / hoi e criou um lugar para os arquivos
hoiuser@zareason-breeze:/home/userz/data/Sites/hoi$ ls -alF
total 16
drwxr-xr-x 4 userz hoidevs 4096 2012-02-27 13:34 ./
drwxr-xr-x 2 userz userz 4096 2012-02-29 17:00 odt/
drwxrwxr-x 2 userz hoidevs 4096 2012-02-27 13:34 html/
4) Abriu uma janela de terminal, usuário userz estava ativo
5) su - hoiuser (comutado para usuário hoiuser)
6) Tentativa de cd / home / userz / data / Sites
hoiuser@zareason-breeze:/home/userz/data$ cd Sites
-su: cd: Sites: Permission denied (voila, the problem)
userz@zareason-breeze:~/data/Sites$ ls -alF
total 60
drwxr-xr-- 11 userz userz 4096 2012-02-24 16:20 ./
drwxr-xr-x 4 userz hoidevs 4096 2012-02-27 13:34 hoi/
7) Alterou as permissões para sites
userz@zareason-breeze:~/data/Sites$ chmod 755 .
userz@zareason-breeze:~/data/Sites$ ls -alF
total 60
drwxr-xr-x 11 userz userz 4096 2012-02-24 16:20 ./
E voila problem fixed .... aqui é prova
hoiuser@zareason-breeze:/home/userz/data$ id
uid=1009(hoiuser) gid=1009(hoiuser) groups=1009(hoiuser),1010(hoidevs)
hoiuser@zareason-breeze:/home/userz/data$ cd Sites (<- yea no error message)
hoiuser@zareason-breeze:/home/userz/data/Sites$ cd hoi
hoiuser@zareason-breeze:/home/userz/data/Sites/hoi$ ls -alF
total 16
drwxr-xr-x 4 userz hoidevs 4096 2012-02-27 13:34 ./
drwxr-xr-x 11 userz userz 4096 2012-02-24 16:20 ../
drwxr-xr-x 2 userz userz 4096 2012-02-29 17:00 odt/
drwxrwxr-x 2 userz hoidevs 4096 2012-02-27 13:34 html/
Até mesmo usuários experientes de Linux / Unix precisam de um lembrete de vez em quando.
Como foi apontado, não é suficiente apenas dar as permissões corretas para o diretório onde os arquivos estão, você também precisa ter certeza de que todos os diretórios que levam a esse diretório tenham as permissões corretas, especialmente o capacidade de "outro" para "pesquisar" e procurar o diretório e os arquivos. Dificilmente intuitivo quando x significa executar, certo.
Minha estrutura de subdiretórios era: / home / userz / data / Sites / hoi / html /
A partir de casa
userz@zareason-breeze:~$ pwd
/home
Esta foi a estrutura do meu diretório ANTES do chmod
drwxr-xr-x 13 root root 4096 2012-02-29 14:51 home/
drwxr-xr-x 88 userz userz 4096 2012-02-29 17:07 userz/
drwxr-xr-x 476 userz userz 20480 2012-02-26 16:08 data/
drwxr-xr-- 11 userz userz 4096 2012-02-24 16:20 Sites/ (<-- Do you see it, other is r--)
drwxr-xr-x 4 userz hoidevs 4096 2012-02-27 13:34 hoi/
drwxrwxr-x 2 userz hoidevs 4096 2012-02-27 13:34 html/
Esta foi a minha estrutura de diretórios após o chmod
drwxr-xr-x 13 root root 4096 2012-02-29 14:51 home/
drwxr-xr-x 88 userz userz 4096 2012-02-29 17:07 userz/
drwxr-xr-x 476 userz userz 20480 2012-02-26 16:08 data/
drwxr-xr-x 11 userz userz 4096 2012-02-24 16:20 Sites/ (<-- Fixed by the chmod > 755 ., now r-x)
drwxr-xr-x 4 userz hoidevs 4096 2012-02-27 13:34 hoi/
drwxrwxr-x 2 userz hoidevs 4096 2012-02-27 13:34 html/
Observe que a única alteração foi as permissões r-x para 'outro' para o diretório 'Sites'. Espero que isso ajude os outros, foi uma boa reciclagem para mim.