Gerenciar Grupos no Linux com groupadd, usermod e groupdel

CompTIABeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá as habilidades essenciais para gerenciar grupos de usuários em um ambiente Linux. Você ganhará experiência prática com os principais utilitários de linha de comando para administração de grupos, incluindo o groupadd para criar novos grupos, o usermod para modificar as associações de usuários e o groupdel para remover grupos do sistema.

Você seguirá um fluxo de trabalho prático, começando pela criação de um novo grupo. Em seguida, adicionará um usuário existente a este grupo e utilizará comandos de inspeção como grep e groups para verificar as alterações. Para concluir o laboratório, você praticará a remoção do grupo e a confirmação de sua exclusão, cobrindo todo o ciclo de vida do gerenciamento de grupos.

Este é um Laboratório Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para concluir cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 98%. Ele recebeu uma taxa de avaliação positiva de 100% dos alunos.

Criar um Novo Grupo no Linux com groupadd

Nesta etapa, você aprenderá como criar um novo grupo de usuários em seu sistema Linux. No Linux, os grupos são um mecanismo crucial para gerenciar permissões de múltiplos usuários simultaneamente. Em vez de atribuir permissões a cada usuário individualmente, você pode atribuí-las a um grupo, e qualquer usuário que seja membro desse grupo herdará essas permissões. Isso simplifica a administração do sistema, especialmente em ambientes com muitos usuários.

Para este exercício, vamos supor que você é um administrador de sistemas de uma empresa e precisa criar um novo grupo para uma equipe de pesquisa e desenvolvimento que está chegando. Usaremos o comando groupadd para realizar essa tarefa. Este comando requer privilégios administrativos, que você pode obter usando o sudo.

Primeiro, abra seu terminal. Ele deve abrir no diretório padrão, ~/project. Agora, vamos criar um novo grupo chamado research.

Execute o seguinte comando:

sudo groupadd research

O comando sudo eleva seus privilégios para realizar esta tarefa administrativa. groupadd é o comando para criar o grupo, e research é o nome que escolhemos para o nosso novo grupo.

Se o comando for bem-sucedido, ele não produzirá nenhuma saída. Para confirmar que o grupo foi criado, você pode verificar o arquivo /etc/group. Este arquivo armazena informações sobre todos os grupos no sistema. Podemos usar o comando grep para procurar nosso grupo recém-criado dentro deste arquivo.

grep research /etc/group

Você deverá ver uma nova linha na saída que corresponde ao grupo research. O formato é nome_do_grupo:marcador_de_senha:id_do_grupo:membros. O seu ID de Grupo (GID) pode ser diferente do exemplo abaixo, o que é normal, pois o sistema o atribui automaticamente.

research:x:5003:

Esta saída confirma que o grupo research agora existe em seu sistema, pronto para que usuários sejam adicionados a ele.

Adicionar um Usuário a um Grupo Secundário com usermod

Nesta etapa, você adicionará um usuário existente ao grupo research que você criou. No Linux, cada usuário possui um grupo primário e pode pertencer a vários grupos secundários (também chamados de grupos suplementares). Isso permite um gerenciamento de permissões flexível. Agora que o grupo research está pronto, adicionaremos o usuário atual, labex, a ele como um grupo secundário. Isso concederá ao usuário labex quaisquer permissões atribuídas ao grupo research sem alterar seu grupo primário.

Para modificar as associações de grupo de um usuário, usamos o comando usermod. Esta é uma ferramenta poderosa para alterar detalhes da conta do usuário.

Usaremos o comando usermod com as opções -aG:

  • -G: Especifica a nova lista de grupos secundários.
  • -a: Significa "append" (anexar). Esta é uma opção muito importante. Ela adiciona o usuário ao(s) grupo(s) especificado(s) sem removê-lo de seus grupos atuais. Se você omitir o -a, o usuário será removido de todos os outros grupos secundários que não estiverem listados no comando.

No seu terminal, execute o seguinte comando para adicionar o usuário labex ao grupo research:

sudo usermod -aG research labex

Este comando requer sudo porque modifica informações de usuário em nível de sistema. research é o grupo ao qual estamos adicionando o usuário, e labex é o usuário que está sendo modificado. Assim como o groupadd, este comando não produzirá saída se for executado com sucesso.

Você pode verificar a alteração imediatamente inspecionando o arquivo /etc/group novamente.

grep research /etc/group

Agora você deve ver o usuário labex listado ao final da linha para o grupo research.

research:x:5003:labex

Isso confirma que o labex agora é um membro do grupo research.

Inspecionar Associações de Grupos e Usuários com grep e groups

Nesta etapa, você aprenderá maneiras mais eficientes de inspecionar as associações de grupo de um usuário. Embora já tenhamos usado o grep no arquivo /etc/group para ver os membros de um grupo específico, existem métodos mais diretos para visualizar todos os grupos aos quais um determinado usuário pertence. Esta é uma tarefa comum para administradores de sistemas verificarem permissões e configurações.

Primeiro, vamos usar o grep novamente, mas desta vez para encontrar todos os grupos secundários dos quais o usuário labex é membro. Ao pesquisar pelo nome de usuário no arquivo /etc/group, você pode ver todas as entradas de grupo onde o labex está listado como membro.

Execute este comando no seu terminal:

grep labex /etc/group

A saída mostrará cada linha em /etc/group que contém a string "labex". Isso incluirá o grupo research que adicionamos ao usuário, bem como quaisquer outros grupos secundários padrão. Sua saída pode incluir grupos adicionais dependendo da configuração do seu sistema.

sudo:x:27:labex
ssl-cert:x:121:labex
labex:x:5000:
public:x:5002:labex
research:x:5003:labex

Embora isso funcione, um comando mais direto e amigável para essa tarefa é o groups. Este comando foi projetado especificamente para listar todos os grupos (tanto primários quanto secundários) de um determinado usuário.

Para ver todos os grupos aos quais o usuário labex pertence, execute o seguinte comando:

groups labex

Este comando fornece um resumo limpo, em uma única linha, das afiliações de grupo do usuário.

labex : labex sudo ssl-cert public research

Nesta saída, o nome antes dos dois pontos (labex) é o usuário que está sendo consultado. A lista após os dois pontos mostra todos os grupos. O primeiro grupo na lista (labex) é o grupo primário do usuário. Todos os grupos subsequentes (sudo, ssl-cert, public, research) são os grupos secundários. Este comando costuma ser a maneira mais rápida de obter uma visão completa das associações de grupo de um usuário.

Excluir um Grupo com groupdel e Verificar sua Remoção

Nesta etapa final, você aprenderá como remover um grupo do sistema. Esta é uma tarefa administrativa comum quando uma equipe é desfeita ou um projeto é concluído, e seu grupo associado não é mais necessário. Para excluir um grupo, usamos o comando groupdel.

Assim como criar um grupo, excluir um é uma ação administrativa que requer privilégios de sudo. É importante notar que você não pode excluir o grupo primário de um usuário existente. Você deve primeiro alterar o grupo primário do usuário antes de excluir o antigo. No entanto, como o research era apenas um grupo secundário para o labex, podemos excluí-lo sem problemas.

No seu terminal, execute o seguinte comando para excluir o grupo research:

sudo groupdel research

O comando groupdel, quando bem-sucedido, não produzirá nenhuma saída. Ele simplesmente remove a entrada do grupo do banco de dados de grupos do sistema, principalmente do arquivo /etc/group.

Para confirmar que o grupo foi removido com sucesso, podemos usar o mesmo comando grep que usamos para verificar sua existência anteriormente.

grep research /etc/group

Desta vez, o comando não deve produzir nenhuma saída. Ele retornará imediatamente ao prompt de comando. Esta ausência de saída é a confirmação de que a linha contendo research foi removida do arquivo /etc/group e, portanto, o grupo não existe mais no sistema.

Resumo

Neste laboratório, você aprendeu os fundamentos do gerenciamento de grupos de usuários em um ambiente Linux. Você começou criando um novo grupo chamado research usando o comando sudo groupadd, uma ferramenta crucial para organizar usuários e simplificar o gerenciamento de permissões. Para confirmar a criação bem-sucedida do grupo, você inspecionou o arquivo /etc/group com o comando grep, verificando se a nova entrada do grupo foi adicionada corretamente.

O laboratório também cobriu o ciclo de vida completo do gerenciamento de grupos. Você aprendeu como adicionar um usuário existente a um grupo secundário com o comando usermod e como inspecionar as associações de grupo usando ferramentas como grep e groups. Por fim, praticou a remoção de um grupo do sistema usando o comando groupdel e a verificação de sua exclusão, completando sua compreensão das tarefas essenciais de administração de grupos.