systemctl

O serviço está rodando? Inicie, reinicie, faça subir no boot — e leia por que falhou com journalctl.

>_ Teste aqui: um Linux simulado, nesta página
Carregando o terminal…

Exemplos

  • sudo systemctl start nginx
  • systemctl is-active nginx
  • sudo systemctl enable nginx
  • journalctl -u nginx -n 5
  • systemctl list-units --type=service
  • curl localhost

Como funciona

Na maioria dos servidores Linux (Ubuntu, Debian, Fedora…) quem roda os serviços é o systemd: o servidor web, o ssh, o cron. O systemctl é como você fala com ele.

O status mostra se um serviço está rodando, desde quando, e as últimas linhas de log. Mudar um serviço exige root: sudo systemctl restart nginx. O start é sobre agora; o enable é sobre o próximo boot.

Sintaxe

systemctl COMANDO [SERVIÇO]...

Opções

OpçãoO que faz
statusrodando ou não, desde quando, as últimas linhas de log
start / stop / restartinicia, para, ou para + inicia (precisa de root)
enable / disableinicia a cada boot, ou não (precisa de root)
is-activesó "active" ou não: útil em scripts
--nowcom enable / disable: também inicia / para agora
journalctl -uo log completo de um serviço (journalctl)

Bom saber

  • Um serviço que não sobe diz por quê nos logs: journalctl -u nginx — leia antes de reiniciar de novo.
  • Dentro de containers (como o docker-lab) não tem systemd: o systemctl responde "System has not been booted with systemd".