DIA 01: Reconhecendo o Terreno

LinuxBeginner
Pratique Agora

Introdução

Parabéns! Você acaba de ser contratado como Administrador de Sistemas Júnior na LabEx Corporation, uma startup de tecnologia em rápido crescimento. É o seu primeiro dia e seu supervisor o designou para trabalhar no projeto mais ambicioso da empresa até agora: o "Projeto Phoenix" - uma aplicação revolucionária que transformará a maneira como as empresas gerenciam seus fluxos de trabalho digitais.

Sua primeira missão é "reconhecer o terreno" no servidor de desenvolvimento que hospedará o Projeto Phoenix. Isso envolve realizar um reconhecimento essencial para entender a identidade do sistema, quem o está utilizando e seu estado operacional atual.

Neste desafio, você usará comandos fundamentais do Linux para coletar informações críticas sobre seu novo ambiente. Você identificará sua conta de usuário, verificará detalhes do sistema, verá quem mais está logado, inspecionará informações de usuários e grupos, monitorará o desempenho em tempo real e compilará suas descobertas em um relatório abrangente.

Esta avaliação inicial servirá como base para todo o trabalho futuro no Projeto Phoenix. Sua minuciosidade hoje garantirá o sucesso do projeto amanhã.

Antes de iniciar este curso, é recomendável ter conhecimentos básicos de Linux. Se você é novo no Linux, sugerimos começar pela trilha de aprendizado Linux na LabEx. Este curso foi projetado para testar, consolidar e aprofundar seus fundamentos de Linux por meio de uma série de desafios práticos. Ao longo de sua jornada de aprendizado, sinta-se à vontade para discutir conceitos desconhecidos ou esquecidos com o Labby, nosso assistente de IA. Essa abordagem interativa simula o processo de resolução de problemas que você encontrará em ambientes de trabalho reais.

Aviso Importante: Se encontrar dificuldades durante o desafio:

  1. Discuta com o Labby ou visualize a solução.
  2. Pule temporariamente o desafio e continue com os Laboratórios Guiados subsequentes na trilha de aprendizado Linux.

Primeiro Login e Verificação do Ambiente

Sua primeira ação em um novo sistema é verificar sua própria identidade e as características básicas do sistema operacional. Isso confirma que você é quem pensa ser e que está na máquina correta.

Tarefas

  • Descobrir o nome de usuário do usuário atual.
  • Exibir o nome do kernel do sistema operacional.

Requisitos

  • Todos os comandos devem ser executados no terminal.
  • Use o comando whoami para identificar o usuário atual.
  • Use o comando uname para mostrar o nome do kernel.

Exemplos

Após concluir esta etapa, você deverá ver uma saída semelhante a:

## Saída do comando mostrando o usuário atual
labex

## Saída do comando mostrando o nome do kernel
Linux

Esses resultados confirmam sua identidade como o usuário labex em um sistema Linux, o que é essencial para estabelecer seu ambiente de trabalho.

✨ Verificar Solução e Praticar

Verificando Informações do Sistema e Tempo de Atividade

Após confirmar sua própria identidade, é importante entender o ambiente completo do sistema e há quanto tempo ele está em execução. Essas informações são cruciais para o monitoramento do sistema e o planejamento de manutenção.

Tarefas

  • Exibir informações abrangentes do sistema, incluindo detalhes do sistema operacional, versão do kernel e arquitetura de hardware.
  • Verificar há quanto tempo o sistema está ligado e a carga atual do sistema.

Requisitos

  • Use o comando uname -a para exibir todas as informações do sistema.
  • Use o comando uptime para mostrar o tempo de atividade do sistema e a média de carga (load average).

Exemplos

Após executar os comandos necessários, você deverá ver uma saída semelhante a:

## Informações abrangentes do sistema
Linux labex-virtual-machine 5.15.0-76-generic #83-Ubuntu SMP Thu Jun 15 19:16:32 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

## Tempo de atividade do sistema e informações de carga
14:51:52 up 183 days, 2:55, 0 users, load average: 6.02, 1.80, 0.94

A primeira saída mostra informações detalhadas do sistema, incluindo versão do kernel, nome da máquina (hostname) e arquitetura. A segunda saída indica que o sistema está em execução há 183 dias, com as médias de carga atuais mostrando o desempenho do sistema em diferentes períodos de tempo.

Dicas

  • O comando uname -a exibe todas as informações disponíveis do sistema em uma única linha.
  • O comando uptime mostra há quanto tempo o sistema está funcionando, o número de usuários logados e as médias de carga do sistema.
  • As médias de carga do sistema representam a carga média do sistema nos períodos de 1, 5 e 15 minutos.
✨ Verificar Solução e Praticar

Coletando Detalhes de Usuário e Grupo

Entender as permissões do seu usuário é fundamental. Você precisa conhecer seu ID de usuário (UID), ID de grupo primário (GID) e quaisquer outros grupos aos quais pertence, pois eles determinam seus direitos de acesso no sistema.

Tarefas

  • Exibir as informações detalhadas de usuário e grupo para sua conta de usuário atual.

Requisitos

  • Use o comando id para recuperar seus identificadores de usuário e grupo.

Exemplos

Ao executar o comando solicitado, você deverá ver uma saída semelhante a:

uid=5000(labex) gid=5000(labex) groups=5000(labex),27(sudo),121(ssl-cert),5002(public)

Esta saída mostra:

  • uid=5000(labex): Seu ID de usuário é 5000 com o nome de usuário "labex".
  • gid=5000(labex): Seu ID de grupo primário é 5000 com o nome de grupo "labex".
  • groups=...: Você pertence a vários grupos, incluindo "sudo" (privilégios administrativos), "ssl-cert" (acesso a certificados SSL) e "public" (recursos compartilhados).

Compreender essas permissões é crucial para saber quais recursos do sistema você pode acessar e modificar.

Dicas

  • O comando id, quando executado sem argumentos, mostra por padrão as informações do usuário atual.
  • A saída rotulará claramente o UID, GID e os grupos suplementares.
✨ Verificar Solução e Praticar

Monitorando o Desempenho do Sistema em Tempo Real

Uma parte fundamental do reconhecimento do sistema é observar seu desempenho atual. Isso inclui verificar o uso de CPU e memória, e ver quais processos estão em execução. O comando top é a ferramenta padrão para essa tarefa.

Tarefas

  • Iniciar a ferramenta interativa de monitoramento do sistema para visualizar processos ativos e uso de recursos.
  • Sair da ferramenta após observar a saída por alguns instantes.

Requisitos

  • Use o comando top para iniciar a interface de monitoramento.
  • Após o top estar em execução, pressione a tecla q para sair e retornar ao prompt de comando.

Exemplos

Ao iniciar a ferramenta de monitoramento do sistema, você verá uma exibição dinâmica semelhante a:

top - 10:45:00 up 1:15,  1 user,  load average: 0.00, 0.01, 0.05
Tasks: 123 total,   1 running, 122 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.1 us,  0.1 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :   1987.2 total,    890.5 free,    540.1 used,    556.6 buff/cache
MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   1234.5 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
      1 root      20   0  169404  12920   8584 S   0.0   0.6   0:01.50 systemd
      2 root      20   0       0      0      0 S   0.0   0.0   0:00.00 kthreadd
    ...

Esta tela mostra:

  • Resumo do sistema: Hora atual, tempo de atividade, usuários e médias de carga.
  • Resumo de tarefas: Total de processos e seus estados (executando, dormindo, etc.).
  • Uso de CPU: Detalhamento da utilização da CPU por categoria.
  • Uso de memória: Memória total, livre, usada e disponível.
  • Lista de processos: Processos em execução ordenados pelo uso de CPU, com PID, usuário e consumo de recursos.

A tela é atualizada automaticamente a cada poucos segundos, fornecendo monitoramento do sistema em tempo real.

Dicas

  • O top fornece uma visão dinâmica e em tempo real de um sistema em execução. Ele atualiza automaticamente.
  • A tecla q é a forma padrão de encerrar o programa top.
✨ Verificar Solução e Praticar

Gerando um Relatório de Status do Sistema

Finalmente, você consolidará suas descobertas em um arquivo de texto simples. Esta é uma prática comum para registrar o estado de um sistema em um momento específico. Você usará a redirecionamento de saída para salvar o resultado de vários comandos em um único arquivo.

Tarefas

  • Criar um arquivo chamado system_report.txt no seu diretório atual (~/project).
  • O arquivo deve conter a saída dos comandos whoami, uname -a (todas as informações do sistema) e uptime.

Requisitos

  • O arquivo de relatório final deve se chamar system_report.txt.
  • Você deve usar os operadores de redirecionamento de saída (> e >>) para gravar as saídas dos comandos no arquivo.
  • O arquivo deve ser criado no diretório ~/project.

Exemplos

Após concluir esta etapa, seu arquivo system_report.txt deve conter uma saída semelhante a:

labex
Linux labex-virtual-machine 5.15.0-76-generic #83-Ubuntu SMP Thu Jun 15 19:16:32 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
 10:50:01 up  1:20,  1 user,  load average: 0.00, 0.01, 0.05

Este arquivo de relatório demonstra:

  • Linha 1: Identidade do usuário atual (do comando whoami).
  • Linha 2: Informações completas do sistema, incluindo versão do kernel, hostname e arquitetura (do comando uname -a).
  • Linha 3: Tempo de atividade do sistema e médias de carga atuais (do comando uptime).

O arquivo serve como um instantâneo do estado atual do sistema, o que é valioso para fins de documentação e solução de problemas. Você pode verificar o conteúdo do arquivo usando o comando cat após a criação.

Dicas

  • Use o operador > para redirecionar a saída do primeiro comando. Isso criará o arquivo (ou o sobrescreverá se já existir).
  • Use o operador >> para anexar a saída dos comandos subsequentes ao arquivo sem apagar seu conteúdo existente.
  • O comando uptime mostra há quanto tempo o sistema está ligado.
✨ Verificar Solução e Praticar

Resumo

Excelente trabalho! Você concluiu com sucesso seu primeiro dia na LabEx Corporation e estabeleceu as bases para o Projeto Phoenix.

Neste desafio, você praticou o uso de vários comandos essenciais que todo administrador de sistemas deve dominar:

  • whoami: Para confirmar sua identidade de usuário no servidor do Projeto Phoenix.
  • uname: Para verificar as informações do sistema operacional e garantir a compatibilidade.
  • who: Para ver quem mais está trabalhando no servidor de desenvolvimento.
  • id: Para inspecionar suas associações de usuário e grupo para o controle de acesso adequado.
  • top: Para monitorar os processos do sistema e o uso de recursos para garantir o desempenho ideal.
  • Redirecionamento de Saída (> e >>): Para documentar suas descobertas em relatórios profissionais.

Esses comandos formam a base do seu kit de ferramentas de administrador de sistemas. Sua avaliação minuciosa hoje preparou o ambiente do Projeto Phoenix para o empolgante trabalho de desenvolvimento que virá. Amanhã, você começará a organizar a estrutura de arquivos do projeto como o Arquiteto Digital!