Permitir permissão específica do usuário para ler / gravar minha pasta

42

Eu tenho uma pasta /home/samantha/folderque quero compartilhar com o usuário tom. Ele pode ler / escrever a pasta. Como faço isso?

chownnão faria isso porque ainda quero poder ser o proprietário da pasta. Também não vejo como fazer isso chmod.

Zenet
fonte

Respostas:

61

Se você estiver usando o Linux com um sistema de arquivos relativamente moderno (ext3 / ext4, btrfs, ntfs), isso pode ser feito com ACLs POSIX :

  1. Habilite ACLs para o sistema de arquivos. Isso é necessário apenas para ext3 e ext4 em kernels anteriores a 2.6.38. Todos os outros sistemas de arquivos que suportam ACLs os ativam automaticamente.

    mount -o remount,acl /
    tune2fs -o acl /dev/<partition>
    
  2. tomacesso à pasta:

    setfacl -m user:tom:rwx /home/samantha/folder
    

Se o sistema operacional ou o sistema de arquivos não suportar ACLs, outra maneira é usar grupos.

  1. Crie um grupo.

    • Algumas distribuições Linux criam um grupo separado para cada usuário: tomestariam automaticamente em um grupo também chamado tom.

    • Caso contrário, crie um grupo. Isso deve funcionar no Linux ...

      groupadd tom
      gpasswd -a tom tom
      

      ... e isso - no BSD:

      groupadd tom
      usermod -G tom tom
      
  2. chgrpo diretório para esse grupo e conceda permissões com chmod:

     chgrp tom /home/samantha/folder
     chmod g+rwx /home/samantha/folder
    
gravidade
fonte
FWIW, o OP adicionou uma resposta adicional em vez de comentar. Ele / ela tem uma pergunta sobre sua solução. Obrigado.
E o tom também precisará de permissão de execução em / home / samantha para acessar a pasta / home / samantha /.
Senhor Loh.