Alteração de Grupos no Linux

LinuxBeginner
Pratique Agora

Introdução

No Linux, cada ficheiro e diretório é atribuído a um utilizador e a um grupo. Este sistema de propriedade é um aspeto fundamental da segurança e controlo de acesso do Linux. A capacidade de alterar a propriedade do grupo é uma habilidade essencial para administradores de sistemas que precisam de gerir permissões de ficheiros e direitos de acesso de forma eficiente.

Este laboratório foca-se no comando chgrp, que permite alterar a propriedade do grupo de ficheiros e diretórios no Linux. Ao dominar este comando, irá obter uma melhor compreensão da gestão de permissões de ficheiros e aprender um aspeto importante da administração de sistemas.

Ao longo deste laboratório, irá praticar a utilização do comando chgrp em diferentes cenários, tanto para ficheiros individuais como recursivamente para diretórios. Também aprenderá a verificar as alterações de propriedade do grupo e a entender por que a gestão adequada de grupos é crucial para a segurança do sistema.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar 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 96%. Recebeu uma taxa de avaliações positivas de 100% dos estudantes.

Compreendendo a Propriedade do Grupo de Ficheiros

No Linux, cada ficheiro tem um proprietário e um grupo. A atribuição do grupo determina quais utilizadores podem aceder ao ficheiro com base nas permissões do grupo. Vamos explorar como visualizar e alterar a propriedade do grupo.

Primeiro, navegue para o diretório do projeto:

cd ~/project

Agora, vamos criar um novo ficheiro para trabalhar:

touch defense_secrets.txt

Para visualizar a propriedade e as permissões atuais do ficheiro, utilize o comando ls -l:

ls -l defense_secrets.txt

Verá uma saída semelhante a esta:

-rw-r--r-- 1 labex labex 0 Jan 12 16:20 defense_secrets.txt

A saída mostra várias informações:

  • A primeira coluna mostra as permissões do ficheiro
  • A terceira coluna mostra o proprietário (labex)
  • A quarta coluna mostra o grupo (labex)

No nosso sistema, foram criados dois grupos para si: defenders e strategists. Vamos alterar a propriedade do grupo do nosso ficheiro do grupo padrão labex para o grupo defenders utilizando o comando chgrp:

sudo chgrp defenders defense_secrets.txt

Agora, verifique se o grupo foi alterado com sucesso:

ls -l defense_secrets.txt

A saída deve agora mostrar que o ficheiro pertence ao grupo defenders:

-rw-r--r-- 1 labex defenders 0 Jan 12 16:20 defense_secrets.txt

O comando chgrp requer privilégios administrativos quando está a alterar para um grupo do qual não é membro, razão pela qual utilizámos sudo neste exemplo.

Alterando a Propriedade do Grupo Recursivamente

Frequentemente, os administradores de sistemas precisam de alterar a propriedade do grupo não apenas de um único ficheiro, mas de um diretório inteiro e de todo o seu conteúdo. A opção -R (recursiva) do comando chgrp torna esta tarefa simples.

Vamos criar um diretório com múltiplos ficheiros para praticar:

mkdir -p ~/project/operational_plans
touch ~/project/operational_plans/plan1.txt
touch ~/project/operational_plans/plan2.txt

Primeiro, vamos verificar a propriedade atual do grupo do diretório e dos seus ficheiros:

ls -l ~/project/operational_plans

Verá que ambos os ficheiros pertencem ao grupo padrão labex:

-rw-r--r-- 1 labex labex 0 Jan 12 16:30 plan1.txt
-rw-r--r-- 1 labex labex 0 Jan 12 16:30 plan2.txt

Para alterar a propriedade do grupo do diretório e de todos os ficheiros dentro dele para o grupo strategists, utilize o comando chgrp com a opção -R:

sudo chgrp -R strategists ~/project/operational_plans

A opção -R indica ao chgrp para operar recursivamente, aplicando a alteração ao diretório e a tudo o que está dentro dele.

Agora, verifique se a propriedade do grupo foi alterada para o diretório e para o seu conteúdo:

ls -l ~/project
ls -l ~/project/operational_plans

A saída deve mostrar que o diretório e ambos os ficheiros agora pertencem ao grupo strategists:

drwxr-xr-x 2 labex strategists 4096 Jan 12 16:30 operational_plans
...

-rw-r--r-- 1 labex strategists 0 Jan 12 16:30 plan1.txt
-rw-r--r-- 1 labex strategists 0 Jan 12 16:30 plan2.txt

A opção recursiva é particularmente útil quando se lida com grandes estruturas de diretórios onde alterar manualmente cada ficheiro seria impraticável.

Compreendendo Informações e Permissões de Grupo

Agora que sabe como alterar a propriedade do grupo, vamos explorar como visualizar informações do grupo e entender por que as permissões do grupo são importantes.

No Linux, as informações sobre os grupos são armazenadas no ficheiro /etc/group. Pode visualizar os grupos que existem no sistema com o comando getent:

getent group

Isto irá exibir uma longa lista de todos os grupos no sistema. Para ver apenas os grupos com os quais temos trabalhado, pode filtrar a saída:

getent group | grep -E 'defenders|strategists'

Deverá ver uma saída semelhante a:

defenders:x:1001:
strategists:x:1002:

Para ver a que grupos o seu utilizador atual pertence, utilize o comando groups:

groups

A saída mostra todos os grupos dos quais o seu utilizador é membro:

labex adm cdrom sudo dip plugdev lpadmin sambashare

Agora, vamos entender por que as permissões do grupo são importantes. No Linux, as permissões de ficheiro são definidas para três categorias: proprietário, grupo e outros. Vamos criar um novo ficheiro e modificar as suas permissões para demonstrar isto:

touch ~/project/group_example.txt
ls -l ~/project/group_example.txt

A saída mostrará as permissões padrão:

-rw-r--r-- 1 labex labex 0 Jan 12 16:40 group_example.txt

A string de permissão -rw-r--r-- pode ser dividida em:

  • Primeiro caractere: Tipo de ficheiro (- significa ficheiro regular)
  • Próximos três caracteres (rw-): Permissões do proprietário (leitura, escrita, sem execução)
  • Próximos três caracteres (r--): Permissões do grupo (apenas leitura)
  • Últimos três caracteres (r--): Permissões de outros (apenas leitura)

Vamos alterar as permissões do grupo para permitir acesso de escrita:

chmod g+w ~/project/group_example.txt
ls -l ~/project/group_example.txt

A saída agora mostra:

-rw-rw-r-- 1 labex labex 0 Jan 12 16:40 group_example.txt

Observe que as permissões do grupo foram alteradas de r-- para rw-.

Finalmente, vamos combinar o que aprendemos, alterando tanto a propriedade do grupo quanto as permissões do grupo:

sudo chgrp defenders ~/project/group_example.txt
chmod g+x ~/project/group_example.txt
ls -l ~/project/group_example.txt

O resultado deve ser:

-rw-rwxr-- 1 labex defenders 0 Jan 12 16:40 group_example.txt

Agora, o ficheiro é propriedade do grupo defenders e tem permissões de leitura, escrita e execução para os membros desse grupo.

Resumo

Neste laboratório, aprendeu a gerir a propriedade do grupo no Linux usando o comando chgrp. Começou por alterar o grupo de um único ficheiro, depois progrediu para alterar recursivamente os grupos de diretórios e seus conteúdos. Finalmente, explorou como visualizar informações do grupo e entender a importância das permissões do grupo na segurança de ficheiros Linux.

Conceitos-chave abordados neste laboratório:

  1. Usando chgrp para alterar a propriedade do grupo de ficheiros
  2. Usando a opção -R para alterações recursivas da propriedade do grupo
  3. Visualizando a propriedade e as permissões dos ficheiros com ls -l
  4. Examinando informações do grupo com getent group e groups
  5. Compreendendo a relação entre a propriedade do grupo e as permissões dos ficheiros
  6. Modificando as permissões do grupo com chmod

Estas habilidades são essenciais para a administração de sistemas Linux, especialmente ao gerir recursos partilhados e implementar controlos de acesso adequados. A capacidade de atribuir e gerir corretamente a propriedade do grupo ajuda a manter a segurança, permitindo ao mesmo tempo o acesso apropriado a ficheiros e diretórios.