Introdução
Neste laboratório, você aprenderá como verificar o estado operacional de um sistema Linux, focando especificamente em como determinar se o sistema está em modo de usuário único (single-user mode). Você explorará os níveis de execução (runlevels) tradicionais usando os comandos runlevel e who -r, e também examinará o alvo (target) padrão do sistema em ambientes systemd modernos usando systemctl get-default. Esta experiência prática fornecerá habilidades práticas para entender e verificar o estado operacional do sistema.
Verificar o nível de execução com runlevel
Nesta etapa, exploraremos o conceito de níveis de execução (runlevels) no Linux e como verificar o nível de execução atual usando o comando runlevel.
Os níveis de execução representam diferentes estados operacionais de um sistema Linux. Cada nível de execução define quais serviços são iniciados e parados. Por exemplo, um nível de execução pode ser para um sistema multiusuário com uma interface gráfica, enquanto outro pode ser para o modo de usuário único (single-user mode) usado para manutenção.
Embora as distribuições Linux modernas frequentemente usem alvos systemd em vez de níveis de execução tradicionais, entender os níveis de execução ainda é valioso, pois você pode encontrá-los em sistemas ou documentações mais antigos.
Vamos verificar o nível de execução atual do seu ambiente LabEx. Abra o terminal, se ainda não o fez.
Digite o seguinte comando e pressione Enter:
runlevel
Você deve ver uma saída semelhante a esta:
N 5
Vamos analisar a saída:
- O primeiro caractere (
Nneste caso) indica o nível de execução anterior.Nsignifica que não havia um nível de execução anterior (o sistema acabou de iniciar). - O segundo caractere (
5neste caso) indica o nível de execução atual.
Em sistemas SysVinit tradicionais, os níveis de execução comuns incluem:
0: Desligar (desligar o sistema)1: Modo de usuário único (para manutenção)2: Modo multiusuário, sem rede3: Modo multiusuário, com rede (console de texto)4: Não usado/definível pelo usuário5: Modo multiusuário, com rede e uma interface gráfica6: Reiniciar (reiniciar o sistema)
Seu ambiente LabEx está sendo executado no nível de execução 5, que corresponde a um sistema multiusuário com um ambiente de área de trabalho gráfica.
Entender os níveis de execução ajuda você a solucionar problemas de inicialização do sistema e gerenciar os serviços do sistema.
Clique em Continuar para prosseguir para a próxima etapa.
Verificar o nível de execução com who -r
Na etapa anterior, usamos o comando runlevel para verificar o nível de execução atual. Outra maneira de obter informações semelhantes é usando o comando who com a opção -r.
O comando who é normalmente usado para mostrar quem está logado no sistema. No entanto, com a opção -r, ele exibe o nível de execução atual.
Vamos experimentar. No seu terminal, digite o seguinte comando e pressione Enter:
who -r
Você deve ver uma saída semelhante a esta:
run-level 5 <DATE> <TIME>
Esta saída confirma que o sistema está atualmente no nível de execução 5. A data e a hora indicam quando o sistema entrou neste nível de execução.
Comparando a saída de runlevel e who -r, você pode ver que ambos os comandos fornecem informações sobre o nível de execução atual, embora o formato difira. who -r fornece uma saída mais descritiva, incluindo a data e a hora.
Usar comandos diferentes para obter resultados semelhantes é comum no Linux. É útil conhecer várias maneiras de obter as informações de que você precisa, pois alguns comandos podem estar disponíveis em determinados sistemas, enquanto outros não, ou um comando pode fornecer informações mais detalhadas do que outro.
Pratique o uso de runlevel e who -r para se sentir confortável em verificar o estado operacional do sistema.
Clique em Continuar para passar para a próxima etapa.
Inspecionar o alvo padrão com systemctl get-default
Como mencionado anteriormente, as distribuições Linux modernas frequentemente usam systemd em vez do sistema SysVinit tradicional. systemd usa "alvos" (targets), que são semelhantes em conceito aos níveis de execução, mas oferecem mais flexibilidade.
Um alvo é um grupo de unidades systemd (como serviços, pontos de montagem, sockets, etc.) que o sistema deve iniciar ou parar para atingir um estado desejado. O alvo padrão é o estado em que o sistema inicializa.
Podemos usar o comando systemctl para interagir com o systemd. O subcomando get-default mostra o alvo padrão.
Observação: Devido à natureza do ambiente LabEx rodando em um contêiner Docker, o comando systemctl pode se comportar de maneira diferente ou mostrar informações limitadas em comparação com uma instalação completa do sistema operacional. No entanto, ainda podemos usá-lo para entender o conceito de alvos padrão.
No seu terminal, digite o seguinte comando e pressione Enter:
systemctl get-default
Você deve ver uma saída semelhante a esta:
graphical.target
Esta saída indica que o alvo padrão para este sistema é graphical.target. Este alvo normalmente inclui todos os serviços necessários para um sistema multiusuário com um ambiente de área de trabalho gráfica, o que se alinha com o nível de execução 5 que vimos anteriormente.
Outros alvos comuns incluem:
multi-user.target: Semelhante ao nível de execução 3, um sistema multiusuário sem interface gráfica.rescue.target: Um modo de usuário único para recuperação do sistema.reboot.target: Usado para reiniciar o sistema.poweroff.target: Usado para desligar o sistema.
Embora você possa não ser capaz de alterar o alvo padrão neste ambiente LabEx, entender como verificá-lo com systemctl get-default é uma habilidade fundamental para gerenciar sistemas baseados em systemd.
Você agora aprendeu três maneiras diferentes de verificar o estado operacional do sistema ou seu estado de inicialização padrão: runlevel, who -r e systemctl get-default.
Clique em Continuar para concluir este laboratório.
Resumo
Neste laboratório, aprendemos como verificar o estado operacional do sistema no Linux. Começamos explorando o conceito de níveis de execução (runlevels), que representam diferentes estados do sistema, e usamos o comando runlevel para determinar o nível de execução atual. Entendemos o significado da saída, incluindo os níveis de execução anterior e atual, e revisamos os níveis de execução comuns em sistemas SysVinit tradicionais.
Em seguida, aprendemos um método alternativo para verificar o nível de execução usando o comando who -r, que fornece informações semelhantes sobre o nível de execução do sistema. Finalmente, examinamos como as distribuições Linux modernas, que frequentemente usam systemd, gerenciam os estados do sistema por meio de alvos (targets) em vez dos níveis de execução tradicionais, e usamos o comando systemctl get-default para identificar o alvo padrão.



