De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

systemctl - O Comando que Controla o Coração do Linux

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 13 de agosto de 2025

O comando systemctl é a ferramenta principal para controlar e gerenciar o systemd, o sistema de inicialização e gerenciador de serviços padrão na maioria das distribuições Linux modernas (como Ubuntu, CentOS 7+, Fedora, etc.).

Ele substituiu os antigos comandos service e chkconfig e se tornou o padrão para interagir com o gerenciamento de serviços. Em essência, o systemctl permite que você controle os "serviços" do seu sistema, que são processos em segundo plano (ou "daemons") essenciais para o funcionamento do Linux.

Sua sintaxe básica é simples e intuitiva:

$ systemctl  

Você precisa de permissões de root (usando sudo) para a maioria dos comandos que alteram o estado do sistema.

Comandos Mais Comuns

Aqui estão os comandos que você mais usará no dia a dia:

1. Verificando o Status de um Serviço

Este é o comando mais útil para diagnosticar problemas. Ele mostra se um serviço está em execução, se falhou, há quanto tempo está ativo, e exibe as últimas linhas de log.

$ systemctl status apache2.service

(ou httpd.service dependendo da distribuição)

2. Iniciando, Parando e Reiniciando Serviços

Esses comandos são essenciais para o gerenciamento de serviços.

Iniciar um serviço:

$ sudo systemctl start apache2.service

Parar um serviço:

$ sudo systemctl stop apache2.service

Reiniciar um serviço:

$ sudo systemctl restart apache2.service

Recarregar a configuração de um serviço:

Se você alterar um arquivo de configuração de um serviço (por exemplo, o arquivo sshd_config do SSH), você pode recarregar as novas configurações sem precisar reiniciar o serviço. Isso é mais rápido e evita interrupções.

$ sudo systemctl reload sshd.service

Gerenciando Serviços na Inicialização (Boot)

Uma das maiores vantagens do systemctl é o gerenciamento de quais serviços são iniciados automaticamente quando o sistema liga.

Habilitar um serviço:

Isso cria um link simbólico para que o serviço seja iniciado automaticamente na próxima inicialização do sistema.

$ sudo systemctl enable apache2.service

Desabilitar um serviço:

Isso remove o link simbólico, impedindo que o serviço inicie automaticamente.

$ sudo systemctl disable apache2.service

Verificar se um serviço está habilitado:

$ systemctl is-enabled apache2.service

O comando retornará enabled, disabled ou static.

Outros Comandos Úteis

Listar todos os serviços ativos:

$ systemctl list-units --type=service

Você pode usar | grep para procurar um serviço específico, como systemctl list-units --type=service | grep sshd.

Listar todos os serviços (ativos e inativos):

$ systemctl list-units --type=service --all

O systemctl é uma ferramenta poderosa e versátil, e dominar seus comandos é fundamental para qualquer administrador de sistema Linux.



Veja a relação completa dos artigos de Rubens Queiroz de Almeida