Este artigo pretende, dar exemplos sobre como utilizar o comando systemctl status em systemd para ver o status do serviço fornecido em sistemas operacionais Linux e suas respectivas distribuições. Com o comando systemctl você consegue gerenciar todos os serviços ativos ou inativos em qualquer sistemas baseado no Linux.
Confira alguns exemplos de uso o comando systemctl que podem facilitar a administração de sistemas Linux.
Visualizando o Status de um Serviço com o systemd
A sintaxe é a seguinte para o comando systemctl
systemctl status {service-name}
systemctl status {unit-name}
Como visualizar o status de um serviço chamado httpd com o systemctl
Exemplo do comando:
systemctl status httpd.service
systemctl status sshd.service
SYSTEMTCL STATUS SSHD
O ponto (“ verde “) usa cores nos terminais suportados para resumir o estado da unidade em um relance. A cor branca indica um estado “inativo” ou “desativado”. A cor vermelha indica um estado de “falha” ou “erro”. Verde indica um estado “ativo”, “recarregando” ou “ativando”.
Compreender os estados de serviço ou unidade do systemd no LINUX
O status do serviço do systemctl no Linux depende de vários estados, como a seguir:
Atualmente as seguintes unidades são suportadas pelo systemd
service: Configuração da unidade de serviço sobre um processo controlado e supervisionado pelo systemd.
mount: Ponto de montagem do sistema de arquivos controlado e supervisionado pelo systemd.
swap: Troca de arquivo / configuração de disco controlada pelo systemd.
socket: Um IPC ou socket de rede, ou um sistema de arquivos FIFO controlado e supervisionado pelo systemd, para ativação baseada em socket.
target: Contém informações sobre uma unidade de destino do systemd. É usado para agrupar unidades e como pontos de sincronização bem conhecidos durante a inicialização. Por exemplo, graphical.target é usado para login de desktop baseado em GUI. Da mesma forma, multi-user.target é usado por servidores onde os usuários podem fazer login usando ssh / console.
device: Uma unidade de dispositivo conforme exposta na árvore de dispositivos sysfs / udev. Inclui rede e outros dispositivos.
automount: Sistemas de arquivos Automount
timer: Unidade systemd semelhante ao Cron para executar comandos e serviços em um determinado formato de data / hora. Por exemplo, atualize o firmware ou limpe a sessão criada por aplicativos da web em Python, ou PHP.
path: Uma unidade de destino especial do systemd que configura todas as unidades de caminho. Por exemplo, o systemd pode executar uma ação certian dependendo do caminho do sistema de arquivos. Se / etc / foo / modifed realizar alguma ação.
slice: Usamos uma fatia do systemd para isolar cargas de trabalho. Eles definem uma hierarquia na qual os escopos e o serviço são colocados. Os processos reais estão contidos em escopos ou em serviços. Pense nele como um Docker leve. Para cada fatia, certos limites de recursos, como CPU ou limite de E / S de disco, podem ser definidos e se aplicam a todos os processos.
scope: As unidades de escopo não são configuradas por meio de arquivos de configuração de unidade, mas apenas criadas programaticamente usando as interfaces de barramento do systemd. Eles são nomeados de forma semelhante a nomes de arquivos. Uma unidade cujo nome termina em “.scope” refere-se a uma unidade de escopo. As unidades de escopos gerenciam um conjunto de processos do sistema. Ao contrário das unidades de serviço, as unidades de escopo gerenciam processos criados externamente e não bifurcam processos por conta própria. O principal objetivo das unidades de escopo é agrupar processos de trabalho de um serviço do sistema para organização e gerenciamento de recursos.
Podemos listar todas as unidades de serviços da seguinte forma:
sudo systemctl --type=service
Quer ver as unidades do tipo de montagem? Experimente:
sudo systemctl --type=mount
Exibir todas as unidades de cronômetro do systemd em sua caixa Linux:
sudo systemctl -t timer
Para mostrar todos os arquivos da unidade instalada, use:
sudo systemctl list-unit-files
Como listar as unidades que o systemd tem atualmente na memória
Execute o seguinte comando do systemctl na sua distribuição Linux.
sudo systemctl list-units
sudo systemctl list-units | more
sudo systemctl list-units | grep sshd
sudo systemctl list-units --type service
sudo systemctl list-units --type timer
Listar systemd/systemctl todas as unidades/serviços com falha no Linux
sudo systemctl list-units --failed
sudo systemctl list-units --state failed
sudo systemctl list-units --state failed --type service
sudo systemctl list-units --state failed --type timer
As opções de comando systemctl para listar todas as unidades/serviços com falha
O que fazer se o serviço como o nginx não estiver sendo executado?
Ative o serviço systemd:
sudo systemctl enable nginx.service
Inicie o serviço nginx:
sudo systemctl start nginx.service
Podemos interromper ou reiniciar o serviço da seguinte maneira: Verifique se um serviço está habilitado ou não, execute: Consulte o status novamente: Para ver resultados completos para problemas de serviço de depuração, passe a opção ou: Nós podemos depurar e ver todas as mensagens de registro relacionadas ao serviço usando o comando journalctl:
sudo systemctl stop nginx.service
sudo systemctl restart nginx.service
sudo is-enabled nginx.service
sudo status nginx.service --full-l
sudo status nginx.service -l
sudo status openvpn.service --full
Conclusão sobre o uso do Systemctl no Linux
Agora você conhecer os principais usos do comando systemctl no Linux e poderá usufruir desta importante e poderosa ferramenta. Abaixo incluímos alguns artigos que complementarão seu conhecimento.