Categories: Tecnologia

Como usar o comando chgrp no Linux

Fatmawati Achmad Zaenuri / Shutterstock.com

O chgrpcomando no Linux muda a propriedade do grupo de um arquivo ou diretório. Por que usar em vez de chown? Às vezes, um canivete suíço é ótimo, mas quando você realmente precisa de um bisturi, apenas um bisturi serve.

Quando você deve usar chgrp

Use o chgrpcomando para alterar a propriedade do grupo de um arquivo ou diretório. O chowncomando permite que você altere o proprietário do usuário e o proprietário do grupo de um arquivo ou diretório. Então, por que você precisa ou usa chgrp?

Bem, para começar, é fácil. Usarchown para alterar apenas a configuração do proprietário do grupo é um pouco contra-intuitivo. Você tem que ter muito cuidado com a sintaxe. Depende da colocação correta de dois pontos “:”. Coloque isso no lugar errado e você não está fazendo a mudança que pensava que estava fazendo.

A sintaxe de chgrpé totalmente mais direta . Ele também possui um recurso interessante que informa em termos simples quais alterações ele acabou de fazer.

É uma ferramenta desenvolvida especificamente para a tarefa em questão. chgrpabraça completamente o princípio de design do Unix de fazer uma coisa e fazê-la bem. Vamos ver o que isso tem a oferecer.

Alteração da propriedade de grupo de um arquivo

Alterar a propriedade de grupo de um arquivo é muito simples. Você deve usar  sudo com chgrp. Os grupos não pertencem aos usuários, portanto, se um arquivo ou diretório é movido de um grupo para outro, não é uma decisão que cabe ao usuário médio. Esse é um trabalho para alguém com privilégios de root.

Vamos mudar a propriedade do grupo de um arquivo de origem C chamado “gc.c.” Vamos mudá-lo para o grupo “devteam”.

Podemos verificar os valores atuais de propriedade usando ls a opção -l(lista longa).

ls -l

Este é o comando para alterar a propriedade do grupo. Digite  sudo, um espaço  chgrp,, um espaço, o nome do grupo que vamos definir como o proprietário do grupo, um espaço e o nome do arquivo.

sudo chgrp devteam gc.c

Verificaremos se a alteração foi feita usando ls -lnovamente.

ls -l

Podemos ver que a propriedade do grupo foi alterada de “dave” para “devteam”.

Para alterar a propriedade do grupo para um conjunto de arquivos de uma só vez, você pode usar curingas. Vamos mudar a propriedade do grupo para todos os arquivos de origem C no diretório atual. Usaremos este comando:

sudo chgrp devteam * .c

Podemos verificar se a alteração foi feita conforme o esperado usando ls -l.

ls -l

Todos os arquivos de origem C neste diretório foram alterados para que sua propriedade de grupo seja “devteam”.

Ao usar a -copção (alterações) chgrp, listará as alterações feitas em cada arquivo. Suponha que cometemos um erro, queremos que os arquivos de origem C tenham sua propriedade de grupo definida como “researchlab”. Vamos corrigir isso agora. Usaremos este comando:

sudo chgrp -c researchlab * .c

As alterações são feitas por nós e cada uma é listada à medida que acontece, permitindo-nos verificar se o que alterámos está correto.

Mudando a propriedade de grupo de um diretório

Alterar a propriedade do grupo de um diretório é tão simples. Podemos usar este comando para alterar a propriedade do grupo para o diretório “backup”.

sudo chgrp -c devteam ./backup

Para ficar claro, este comando mudará a propriedade do grupo do próprio diretório, não dos arquivos dentro do diretório. Usaremos ls -lcom a -dopção (diretório) para verificar se este é o caso.

ls -l -d

A propriedade do grupo do próprio diretório foi alterada para “devteam”.

A opção recursiva

Se quisermos mudar a propriedade do grupo para os arquivos e diretórios armazenados em um diretório, podemos usar a -Ropção (recursiva). Isso fará com chgrpque a propriedade do grupo mude para todos os arquivos e subdiretórios abaixo do diretório de destino.

Vamos tentar isso com o diretório “backup”. Aqui está o comando:

sudo chgrp -R devteam ./backup

Revisaremos os arquivos em um dos subdiretórios aninhados com o lscomando e também verificaremos as configurações de um dos subdiretórios aninhados usando ls.

ls -l ./backup/images
ls -l -d ./backup/images

Podemos ver que a propriedade do grupo foi alterada tanto para os arquivos nos subdiretórios aninhados quanto para os subdiretórios aninhados.

Usando um arquivo de referência

Até agora, informamos explicitamente chgrpo nome do grupo que desejamos usar. Podemos também usar chgrpde maneira que diz “definir a propriedade de grupo de esse arquivo para a mesma propriedade de grupo como  esse arquivo.”

Vamos definir a propriedade do grupo de “gc.h” para ser igual a “gc.c.”

Podemos verificar as configurações atuais de “gc.c” e “gc.h” usando ls.

ls -l gc.c
ls -l gc.h

A opção que precisamos usar é a --referenceopção. A propriedade do grupo é copiada do arquivo de referência para o outro arquivo. Tome cuidado para distribuir os arquivos da maneira correta.

sudo chgrp --reference = gc.c gc.h

Usaremos lspara verificar se as configurações foram transferidas para “gc.h.”

ls -l gc.h

O arquivo “gc.h” agora tem a mesma propriedade de grupo que “gc.c.”

Usando chgrp com links simbólicos

Podemos usar chgrppara alterar a propriedade do grupo de links simbólicos, ou do arquivo apontado pelo link simbólico.

Para este exemplo, criamos um link simbólico chamado “button_link”. Isso aponta para um arquivo chamado “./backup/images/button_about.png.” Para alterar a propriedade de grupo do arquivo, devemos usar a --dereferenceopção. Isso mudará as configurações do arquivo e deixará o link simbólico inalterado.

Vamos verificar as configurações do link simbólico usando ls -l.

ls -l button_link

O comando para alterar o arquivo é:

sudo chgrp --dereference devteam button_link

Verificaremos se o link simbólico não foi alterado usando ls e também verificaremos as configurações de propriedade de grupo para o arquivo.

ls -l button_link
ls -l ./backup/images/button_about.png

O link simbólico não foi alterado e o arquivo “button_about.png” teve sua propriedade de grupo modificada.

Para alterar a propriedade do grupo do link simbólico em si, devemos usar a --no-dereferenceopção.

O comando a ser usado é:

sudo chgrp --no-dereference devteam button_link

Usaremos ls -l para verificar se a nova propriedade do grupo foi definida para o link simbólico.

ls -l botão-link

Desta vez, o item afetado foi o próprio link simbólico, não o arquivo para o qual ele aponta.

Bom e simples

Simples é bom. Significa que há menos para lembrar e menos para se confundir. Isso deve significar menos erros.

maisroot

Recent Posts

O novo aplicativo “PC Manager” da Microsoft se parece muito com o CCleaner

Muitos aplicativos de limpeza estão disponíveis para Windows ao longo dos anos, mas hoje em…

1 ano ago

Como reiniciar um PS4

Seu PlayStation 4 está congelado? Seus jogos favoritos continuam travando? Reiniciar seu PS4 pode resolver…

1 ano ago

Veja por que as reticências são tão assustadoras ao enviar mensagens de texto…

A popularidade das mensagens de texto significou aprender uma forma totalmente nova de comunicação. Você…

1 ano ago

O telescópio James Webb acaba de capturar os “Pilares da Criação”

A foto dos "Pilares da Criação" tirada pelo Telescópio Espacial Hubble é uma das fotos…

1 ano ago

Você poderá baixar o Proton Drive mais cedo do que pensa

O Proton Drive saiu de seu estágio beta há algumas semanas, mas o aplicativo real…

1 ano ago

Como aumentar o zoom no Photoshop

Para ver suas fotos mais de perto ou para uma edição precisa , você pode…

1 ano ago