Não é possível ler um arquivo, embora ele esteja no meu grupo e as permissões para leitura de grupo estejam definidas


14

Encontro um problema estranho em uma máquina unix / linux:

Sou membro de um grupo, vamos chamá-lo de grupo A e um determinado arquivo (que possui um proprietário diferente) também pertence ao grupo A. As permissões desse arquivo são

-rw-rw----

portanto, espero poder abrir esse arquivo, mas não sou: receberei a mensagem de erro "Permissão negada" quando tentar ver o conteúdo do arquivo (usando cat).

Como as permissões parecem estar corretas, o que mais poderia estar causando isso? Existem restrições de permissão "substituindo" em vigor? Se sim, como eu descobriria?


2
E as permissões de diretório?
19412 Karlson

Se você estiver em vários grupos, seu grupo atual está definido como A?
Code-Guru

2
@Karlson, se as permissões do diretório fossem o problema, você não conseguiria ver as permissões do arquivo em primeiro lugar.
Cjm 13/10/12

Mostre-nos o caminho completo e o nome do arquivo, por favor.
jippie

Está em /home/theotheruser/somefolder/bla.txt Estou em vários grupos.
Lagerbaer

Respostas:


8

Você fez logoff e logon novamente desde que foi adicionado ao grupo A?

Caso contrário, seus processos de logon atuais terão apenas as associações de grupo que possuíam no momento do logon, sem nenhuma alteração desde então. E qualquer processo filho desse logon terá as mesmas associações de grupo (ou seja, se você efetuou login no X, todos os aplicativos, incluindo o emulador de terminal e o shell)

Você pode testar isso efetuando login novamente em outro console ou via ssh, ou algo assim exec sudo -u $(id -u -n) -i(para efetivamente eliminar e substituir o shell atual por um novo shell - qualquer processo em segundo plano pertencente a esse shell ficará órfão)


Não, esse não era o problema; Saí e entrei novamente, o que não resolveu o problema.
Lagerbaer

3

Com o NFS, depende de qual modo de segurança você usa, mas no tradicional, a lista de grupos aos quais o usuário pertence é enviada pelo cliente ao servidor e há um limite no número de grupos que podem ser enviados (era 16 da última vez que verifiquei).

Então, o cliente diz: Sou uid 1234 e, a propósito, sou membro dos grupos 12, 13, 14 ... Se você estiver em mais de 16 grupos, essa lista será truncada e haverá grupos para que o servidor não sabe que você é um membro dele.

Essa é provavelmente a explicação para isso. Somente o administrador do sistema da máquina local e / ou remota pode fazer algo sobre isso, alterando o modelo de segurança ou a configuração do servidor NFS ou reduzindo o número de grupos dos quais você é membro.


Tenho uma forte sensação de que esse é o motivo, porque o grupo em que estou aparece na posição 19 na saída do comando "groups". Vou mostrar esta resposta ao administrador do sistema e ver se isso ajuda. :)
Lagerbaer 15/10/12

Como você alteraria o "modelo de segurança" no NFS para resolver isso?
Danny

2

Como você observa em um comentário, você não tem permissão de leitura para /home/username. Mas para ler /home/username/path1/path2/file, você precisa executar permissões para todo o caminho.

Para depurar isso, execute namei -l /home/username/path1/path2/filecomo o usuário que lê o arquivo.


Esse foi o problema no meu caso. Eu queria conceder direitos a outro usuário para operar na subpasta do meu diretório pessoal, mas o meu diretório pessoal tem acesso 700, então eles têm "Permissão negada" para qualquer comando.
Cerberus

1

Podem ser ACLs. Vejo

getfacl the-file

Pode ser que, por algum motivo, os grupos em que você está inserido não estejam configurados corretamente. Verificar com

id -a

A respeito

namei -xl "$(readlink -f the-file)"

getfattr -dm- the-file

sudo lsattr the-file

Qual é o tipo de sistema de arquivos em que reside?

Algum aparelho, SELinux ou qualquer outro controle de acesso obrigatório em vigor no sistema?

Você tem certeza de que o arquivo não contém o texto "Permissão negada", certo ;-)?


Não, não há nenhuma ACL especial, ele apenas repete o que as bandeiras padrão me dizer, e id -a me diz que estou no grupo que do arquivo
Lagerbaer

O estranho é, eu posso ver os arquivos de outro usuário pertencentes ao grupo B, do qual eu também sou um membro ...
Lagerbaer

O sistema de arquivos parece ser nfs4. namei me dá / e casa pertencente a raiz, raiz. / home / nome de usuário pertencente ao nome de usuário e ao grupo X (dos quais não sou membro), o restante é / home / nome de usuário / caminho1 / caminho2 / arquivo em que caminho1 pertence ao nome de usuário e grupo X e caminho2 pertence ao nome de usuário e grupo A, do qual sou membro.
Lagerbaer
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.