CodeGym /Cursos /Docker SELF /Criação de usuários e grupos, configuração de permissões ...

Criação de usuários e grupos, configuração de permissões de acesso, gerenciamento de processos

Docker SELF
Nível 2 , Lição 6
Disponível

1. Definição do problema

Então, temos pela frente um trabalho prático intenso, onde você poderá colocar em prática todos os conhecimentos adquiridos nas aulas anteriores. Vamos criar usuários, agrupá-los em grupos, configurar permissões de acesso únicas e gerenciar processos no sistema. E se você está pensando: "Por que eu devo aprender isso?", imagine que você é um administrador de sistema ou um engenheiro DevOps, e precisa configurar um servidor para o trabalho colaborativo de uma equipe. Ou apenas salvar o seu computador do caos! No mundo real, situações como essas acontecem com bastante frequência.

Seu objetivo é configurar o sistema para os seguintes usuários e processos:

  1. Criar dois usuários: user1 e user2. Eles irão trabalhar juntos no grupo developers.
  2. Configurar um arquivo (por exemplo, project.txt) de forma que apenas os membros do grupo developers possam editá-lo.
  3. Criar alguns processos (por exemplo, usando o comando sleep) e aprender a finalizá-los, se necessário.
  4. Examinar os processos ativos para identificar quais estão consumindo mais recursos.

Parece um plano? Vamos implementá-lo passo a passo.


2. Passo 1: Criar usuários

1. Criando usuários

Pra começar, vamos criar dois usuários:

sudo adduser user1
sudo adduser user2

Ao executar esses comandos, o sistema vai pedir pra você definir uma senha e adicionar uma descrição pra cada usuário. A gente não vai preencher dados extras aqui, pode só apertar Enter.

Pra cada usuário, o sistema cria automaticamente um diretório home em /home. Você pode conferir isso:

ls /home
Nota:

Se você estiver trabalhando localmente, não esqueça de usar sudo pra ter permissões de administrador. E se você estiver usando o WSL, fique atento porque podem surgir algumas particularidades com usuários. Por exemplo, no WSL o usuário padrão já é administrador do sistema.


3. Passo 2: Criando um grupo e adicionando usuários

1. Criando o grupo

Pra usuários trabalharem juntos nos projetos, vamos adicioná-los a um grupo. Primeiro, bora criar um grupo chamado developers:

sudo groupadd developers

2. Adicionando usuários ao grupo

Agora, adicionaremos os usuários user1 e user2 ao grupo developers. Usamos o comando usermod pra isso:

sudo usermod -aG developers user1
sudo usermod -aG developers user2

3. Verificando a associação ao grupo

Pra garantir que os usuários foram adicionados corretamente ao grupo, execute:

groups user1
groups user2

Você deve ver que user1 e user2 são membros do grupo developers.


4. Passo 3: Trabalhando com arquivos e permissões de acesso

1. Criando um arquivo para o projeto

Vamos criar o arquivo project.txt no diretório home de um dos usuários (por exemplo, user1):

sudo -u user1 touch /home/user1/project.txt

O comando sudo -u permite executar ações como outro usuário.

2. Alterando o proprietário e o grupo do arquivo

Vamos definir user1 como o proprietário e developers como o grupo, para que ambos tenham o mesmo acesso:

sudo chown user1:developers /home/user1/project.txt

3. Configurando permissões de acesso

Agora vamos alterar as permissões de acesso ao arquivo. Use o comando chmod:

sudo chmod 660 /home/user1/project.txt

O que fizemos aqui? Demos ao proprietário user1 e ao grupo developers permissões de leitura e escrita rw-, enquanto todos os outros não têm acesso.

Você pode verificar as permissões com o comando ls:

ls -l /home/user1/project.txt

Resultado esperado:

-rw-rw---- 1 user1 developers 0 data hora /home/user1/project.txt

5. Etapa 4: Iniciando processos

1. Iniciando processos

Pra experimentar, vamos criar alguns processos "de longa duração" usando o comando sleep:

sleep 300 &
sleep 400 &
sleep 500 &

Cada comando sleep é executado em background por causa do símbolo &.

Pra checar a lista de processos, usa o comando ps:

ps

Mais informações podem ser vistas com ps aux:

ps aux | grep sleep

6. Passo 5: Finalizando processos

1. Finalizando um processo pelo PID

Identifique o PID de um dos processos (por exemplo, sleep) e finalize ele:

kill PID

Onde PID é o identificador do processo, que pode ser encontrado usando o comando ps.

2. Finalizando um processo pelo nome

Se você quiser finalizar todos os processos sleep, use o comando killall:

killall sleep

3. Usando pkill

Se você não lembra o nome exato do processo, pkill pode te ajudar finalizando o processo por uma parte do nome:

pkill slee

7. Passo 6: Monitoramento de processos

Pra ficar de olho na carga do sistema, use:

  1. top — pra trabalhar em tempo real:

       top
    

    Aqui você consegue ver a carga do processador, memória e os processos ativos. Use a combinação de teclas k pra encerrar um processo direto pela interface.

  2. htop — uma interface mais amigável (se estiver instalado):

    htop
    
    Pra sair, aperte F10.

8. Checklist

Depois de completar todos os passos, você deve garantir que:

  1. Dois usuários user1 e user2 foram criados.
  2. Um grupo developers foi criado e configurado, com ambos os usuários adicionados a ele.
  3. Um arquivo project.txt foi criado, com acesso permitido apenas para o grupo developers.
  4. Alguns processos foram criados e finalizados usando os comandos kill, killall e pkill.
  5. Você conseguiu visualizar a lista de processos usando ps, top ou htop.

Se tudo foi feito — parabéns! Você passou por todas as etapas principais de gerenciamento de usuários, grupos, permissões de acesso e processos no sistema Linux. Que o poder da linha de comando esteja com você!

1
Pesquisa/teste
Primeiros comandos Linux, nível 2, lição 6
Indisponível
Primeiros comandos Linux
Primeiros comandos Linux
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION