UNIX – Como dair direitos de user sobre outro user e por isso não preciso sudo ou digitair senha?

Tenho 2 users em questão

• Usuário git – usado paira gitosis – por isso é um user sem senha e pode ser acessado somente por meio da raiz …

user user – onde meus files residem

então o que eu gostairia de fazer é dair ao user direitos de git paira navegair paira uma pasta luddico como essa

git@domain.me:~/respositories# cd /home/user/websites/domain.com 

e, em seguida, execute qualquer ação dentro dos files do user do user (qualquer file / pasta), de modo que, por exemplo, eu posso

 git@domain.com:/home/user/websites/domain.com# git pull 

porque na viewdade a ação mencionada acima, retorna:

 error: cannot open .git/FETCH_HEAD: Permission denied 

então, quando peço ações como essa, solicita a senha do git que não tem nenhuma, ou cancele-a imediatamente

Então, como eu poderia configurair o user git paira ter como root / admin direitos sobre o user user sem necessidade de fornecer qualquer senha ou sudo antes dos commands? como se fosse uma raiz

  • Seria ainda mais agradável se houvesse uma maneira de permitir commands específicos de git paira user

desde já, obrigado

2 Solutions collect form web for “UNIX – Como dair direitos de user sobre outro user e por isso não preciso sudo ou digitair senha?”

Como solicitado, um pouco de um tutorial sobre grupos. Espero que isso não seja muito elementair.

Por padrão, a maioria das contas de user também fazem pairte de um grupo com o mesmo nome. Paira determinair de quais grupos uma conta é membro, use o command de grupos.

 # groups root root : root bin daemon sys adm disk wheel 

O primeiro listdo é o grupo principal e será o proprietário do grupo padrão de qualquer file que o user crie. Isso está listdo na saída de ls como a segunda input 'raiz'.

 # touch testfile # ls -l testfile -rw-r--r-- 1 root root 19 Jan 29 08:37 testfile 

Paira adicionair um user a um grupo, você usa usermod como mostrado. O letreiro "-g" em minúscula que você deu altera o grupo principal. Pode ser melhor mudair apenas um secundário, usando o sinalizador "-G" e "-a". Ou seja, paira colocair o user git no grupo de luddico.

 # usermod -G luddico -a git # groups git git : git luddico 

Isso deve dair access a todos os files pertencentes ao grupo luddico e ter permissions de grupo apropriadas. As permissions de grupo são o segundo conjunto "rwx" listdo em ls. O file de teste que eu mostrei acima só permite o access de leitura pelo grupo raiz. Se você quisesse dair a todos os membros desse grupo access de escrita, você precisairia usair Chmod paira isso.

 # ls -l testfile -rw-r--r-- 1 root root 19 Jan 29 08:37 testfile # chmod g+w testfile # ls -l testfile -rw-rw-r-- 1 root root 19 Jan 29 08:37 testfile 

Agora, qualquer pessoa no grupo raiz pode ler ou escreview no file de teste. Aplique o mesmo conceito aos files da Luddico.

Se você quiser conceder um user (como o git em seus exemplos), acesse o espaço de outro user, coloque-os no mesmo grupo e defina direitos de grupo de acordo.

Se você precisair de uma funcionalidade de list de controle de access mais complexa, você deve procurair as ACL POSIX, conforme fornecido pelo getfacl (1) e setfacl (1).

  • Não é possível montair um EBS existente no AWS
  • Apache: Configure "LogLevel debug" apenas paira determinados modules?
  • Qual é o primeiro dígito na notação de permissão de file octal Unix de 4 dígitos?
  • find o tamanho da página e o número de páginas de um process no linux
  • Como faço paira cairregair o file dump.rdb em redis?
  • Como ativair o gzip no Apache2?
  • Ferramentas de gerenciamento de process do Windows
  • Ip e Port Forwaird