O que os grupos fazem em "Usuários e Grupos"?

13

Eu sei que alguns definem permissões no sistema de arquivos (como www-data). Mas não entendo por que essa pergunta foi respondida com êxito adicionando um usuário ao grupo "Vídeo".

Portanto, a questão é principalmente o que todos os grupos pré-criados fazem no Ubuntu? Mais razoavelmente, já que existem tantos, que grupos "especiais" existem e como ou quando devem ser usados?

insira a descrição da imagem aqui

Scaine
fonte

Respostas:

8

Alguns grupos permitem acesso a arquivos ou diretórios, por exemplo: www-datapermitem o acesso a arquivos da Web ou ao admgrupo para ler arquivos /var/log. Esse é o uso trivial.

Mas alguns grupos permitem o acesso a determinados dispositivos. Por exemplo, o dialoutgrupo permite acesso às portas seriais por meio de arquivos em /dev:

$ find /dev -group dialout -exec ls -ld {} \;
crw-rw---- 1 root dialout 4, 64 Jan 19 12:51 /dev/ttyS0
crw-rw---- 1 root dialout 4, 67 Jan 19 12:51 /dev/ttyS3
crw-rw---- 1 root dialout 4, 66 Jan 19 12:51 /dev/ttyS2
crw-rw---- 1 root dialout 4, 65 Jan 19 12:51 /dev/ttyS1

Então, se você é membro do dialoutgrupo você pode usar as portas seriais através da leitura e escrita para o arquivo de dispositivo: echo "Hello world" > /dev/ttyS0. O videogrupo permite acesso ao hardware de vídeo.

Para descrição de cada grupo, leia o arquivo: /usr/share/doc/base-passwd/users-and-groups.html

EDITAR sobre o primeiro comentário:

De fato, geralmente você não precisa estar nesses grupos para "acessar" os recursos de hardware, do ponto de vista do usuário. A prática comum é ter um daemon / servidor gerenciando-o, sendo membro do grupo mais restritivo, permitindo o acesso ao daemon / servidor.

Para o seu caso, ser membro do videogrupo permite acesso direto ao hardware gráfico, não através do servidor X. Normalmente, em computadores desktop / laptop, é bom ter acesso direto ao hardware gráfico ( glxinfo | grep "direct rendering").

Nota lateral, se você tiver renderização direta, mas não for membro do videogrupo ( id | grep --color video), poderá acessar o hardware por uma ACL do /devarquivo ( find /dev/ -group video -exec getfacl {} \; | grep $USERNAME).

shellholic
fonte
Ótima resposta, obrigado. Mas basta acompanhar - não sou membro de nenhum grupo no meu sistema, mas ainda posso usar todo o hardware (como vídeo). Estou confuso sobre o porquê de existirem, se eu ainda posso trabalhar sem eles.
Scaine
Você precisará sudo apt-get install aclexecutar esse segundo comando (getfacl). Obrigado pelo esclarecimento.
Scaine
2

Em geral, o conceito de separação de grupos está relacionado a isso:

http://en.wikipedia.org/wiki/Principle_of_least_privilege

Parece bobo ter todos esses grupos até que você perceba que a alternativa seria um único nível comum de alto privilégio (por exemplo, sudo / root), que seria um pesadelo de segurança.

A maioria dos grupos mostrados na sua postagem existe para que várias partes do sistema operacional possam acessar a funcionalidade comum com a menor quantidade de privilégios. O usuário não precisa se preocupar muito com isso. Durante algumas tarefas administrativas, você pode precisar de seus privs para acessar algumas funcionalidades, e isso geralmente é feito usando o sudo para tarefas curtas e adicionando-se a um grupo específico para tarefas repetitivas.

user10804
fonte