Grupo Linux e permissão - por que não consigo acessar uma pasta para a qual já tenho permissão?

4

Eu encontro um problema muito estranho hoje ... Eu segui um link para instalar o GitLab no meu servidor Linux hoje, na seção Gitolite, há duas linhas para definir a permissão e a propriedade de uma pasta:

sudo chmod -R ug+rwXs,o-rwx /home/git/repositories/
sudo chown -R git:git /home/git/repositories/

E antes dessas linhas, ele criou um usuário e o adicionou a um grupo específico:

sudo adduser --disabled-login --gecos 'GitLab' gitlab
sudo usermod -a -G git gitlab

Eu verifiquei o usuário e as permissões após estas etapas:

gitlab@vm-leader:/home/git$ id
uid=1001(gitlab) gid=1001(gitlab) groups=1001(gitlab),105(git)
gitlab@vm-leader:/home/git$ ls -al
total 56
drwxr-xr-x 8 git  git  4096 Jan  4 16:55 .
drwxr-xr-x 7 root root 4096 Jan  4 11:50 ..
-rw------- 1 git  git    87 Jan  4 17:02 .bash_history
drwxr-xr-x 2 git  git  4096 Jan  4 14:04 bin
drwx------ 2 git  git  4096 Jan  4 14:04 .cache
-r--r--r-- 1 root root  398 Jan  4 14:04 gitlab.pub
drwxr-xr-x 5 git  git  4096 Jan  4 14:01 gitolite
drwxr-x--- 6 git  git  4096 Jan  4 14:04 .gitolite
-rw-r--r-- 1 git  git  5064 Jan  4 14:04 .gitolite.rc
-rw-r--r-- 1 git  git    37 Jan  4 14:04 .profile
-rw-r--r-- 1 git  git    12 Jan  5 19:43 projects.list
drwsrws--- 6 git  git  4096 Jan  5 17:29 repositories
drwx------ 2 git  git  4096 Jan  5 19:43 .ssh
gitlab@vm-leader:/home/git$ 

Com base nesses resultados, acredito que a pasta 'repositories' é permitida para o acesso de usuários do mesmo grupo, neste caso, o grupo 'git' tem permissão para acessar esta pasta. Além disso, o usuário 'gitlab' pertence ao grupo 'git'. Portanto, o usuário do 'gitlab' deve ser capaz de acessar essa pasta. No entanto, eu tenho isso

gitlab@vm-leader:/home/git$ cd repositories/
bash: cd: repositories/: Permission denied
gitlab@vm-leader:/home/git$ 

Isso é muito estranho para mim e eu não tenho ideia do porquê isso aconteceu ou como consertá-lo. Alguém pode me dar uma dica? Obrigado em adiantado.

Informações adicionais:

bear@vm-leader:/home/git$ ls -ld /home/git
drwxr-xr-x 8 git git 4096 Jan  4 16:55 /home/git
    
por Lingfeng Xiong 05.01.2013 / 13:10

2 respostas

0

Este problema foi resolvido! Montei essa pasta (repositórios) via NFS e, no servidor NFS, os usuários git e gitlab não existem. Eu os adicionei e estabeleci grupos apropriados para eles, e tudo corre bem! Fiz alguns testes sobre isso - somente quando o servidor e o cliente estão configurados com user / group, as permissões funcionam corretamente.

    
por 08.01.2013 / 06:09
0

Parece que o / home / git tem 700 permissões. Adicionar permissão de execução para grupo (g + x) a / home / git permite que você tenha acesso:

# chmod g+x /home/git
    
por 05.01.2013 / 16:22