Dar permissão de leitura para o grupo não funciona

1

Estou tentando aprender como funciona o sistema de permissão de arquivos. Eu tenho um grupo com group common . Então eu criei 2 contas; bob e alice com useradd -m -G common bob/alice . Eu criei uma senha para os dois. Então mudei o usuário para alice com su alice e criei um diretório mkdir shared . Em seguida, altero a propriedade chgrp common shared e a permissão para esta pasta chmod 740 shared . Agora, quando eu testo, posso acessar o diretório com o alice. No entanto, quando eu alterno o usuário para bob e tento acessar a pasta, ele diz bash: cd: shared/: Permission denied . O que estou fazendo de errado? Os membros do grupo devem ter permissão de leitura.

    
por Mr.H123 09.12.2016 / 01:40

2 respostas

1

É uma peculiaridade do UNIX.

Para fazer ls em um diretório, você precisa ter permissão de execução no diretório.

Se você só tem permissão de leitura, você pode acessar os arquivos no diretório, mas você tem que saber sobre eles primeiro! por exemplo,

Como Alice:

echo "Hello Bob" > shared/hello

Como Bob:

cat shared/hello

Se você quiser que Bob seja capaz de ls (ou cd to) do diretório comum:

chmod 750 shared
    
por David Purdue 09.12.2016 / 01:44
0

Por favor, observe o seguinte sobre as permissões no linux:

  • (r) read permite abrir um arquivo dado seu nome
  • (w) write permite criar arquivos
  • (x) executar permite listar ou pesquisar arquivos.

Você precisa fazer a permissão da pasta 750 para o outro usuário acessá-la e, como ela foi criada por Alice, ela tem r, w, x mas desde que a permissão agora é 740 bob não será capaz de acessá-lo.

    
por George Udosen 09.12.2016 / 02:00