Hello World 😁 💻
Hoje iremos falar sobre o atual e polêmico sistema de inicialização e gerenciamento de serviços (init system) do Linux, o systemd.
O que é systemd no Linux
O systemd é o gerenciador de sistema e de serviços usado pela maioria das distribuições Linux modernas. Ele é responsável principalmente por inicializar o sistema (boot) e controlar os serviços que rodam no sistema operacional. Ele é o primeiro processo importante que inicia após o kernel e gerencia praticamente tudo que roda depois.
No Linux, ele geralmente tem o PID 1, ou seja, é o primeiro processo do sistema.

Systemd no terminal.
Surgimento do systemd
Systemd foi criado em 2010 por Lennart Poettering e Kay Sievers ambos engenheiros da RedHat. A motivação principal foi resolver limitações do SysVinit, que era o padrão desde os anos 1980. Os problemas do SysVinit que motivaram a criação de um novo sistema de inicialização eram:
- Inicialização lenta: Scripts shell executados sequencialmente (um após o outro);
- Falta de gerenciamento de dependências: Era difícil expressar relações entre serviços;
- Logging fragmentado: Logs espalhados em vários arquivos de texto;
- Sem notificação de serviço pronto: Era difícil saber quando um serviço estava realmente operacional;
- Gerenciamento de PID complexo: Rastreamento de processos era rudimentar.
Então surgiu a necessidade de criar um novo sistema de inicialização mais rápido, moderno e inteligente, que resultou no systemd.
O systemd foi lançado oficialmente em 30 de março de 2010, focado em paralelismo agressivo e no uso de cgroups do kernel para rastrear processos.
A grande polêmica
Systemd foi altamente controverso na comunidade Linux, pois os críticos argumentavam que:
- Violava a filosofia Unix ("faça uma coisa bem feita");
- Era monolítico demais (fazia muitas coisas);
- Código complexo e difícil de manter;
- Dependências circulares problemáticas;
- Forçava adoção através de integração profunda.
Porém os defensores respondiam que:
- Melhorava significativamente a experiência do usuário;
- Inicialização muito mais rápida;
- Melhor segurança e confiabilidade;
- Necessário para sistemas modernos;
- Logging centralizado era ótimo.
Alternativas criadas
A controvérsia foi tão grande que algumas distros criaram alternativas:
- OpenRC: Usado por Alpine Linux, Gentoo;
- runit: Alternativa minimalista;
- s6: Sistema de init baseado em supervisão;
- Devuan: Distribuição criada especificamente para evitar systemd.
Impacto na comunidade Linux
Mesmo com as críticas, systemd conseguiu:
- Transformar a inicialização do Linux: De 30 segundos para 5-10 segundos;
- Melhorar a experiência de desktop Linux: Integração melhor com GNOME, KDE;
- Integração com containers: Docker, Kubernetes usam conceitos do systemd;
- Modernização do Linux: Preparou a base para atualizações futuras.
Situação atual
Hoje, o systemd é o padrão. Quase todas as grandes infraestruturas de nuvem e servidores rodam sobre ele. Apesar das críticas à sua expansão (o projeto agora gerencia até montagem de pastas home e resolução DNS), sua eficiência em gerenciar containers e sistemas modernos é inegável.
Entendendo melhor o que systemd faz
O systemd controla várias coisas importantes como por exemplo, a inicialização e gerenciamento de serviços.
Inicialização do sistema:
Quando o Linux liga:
- BIOS/UEFI inicia;
- Bootloader (ex: GRUB) carrega o kernel;
- O kernel inicia o systemd;
- O systemd inicia todos os serviços necessários.
Exemplos de serviços:
- rede;
- login (SSH);
- banco de dados;
- servidor web;
- interface gráfica.
Gerenciamento de serviços (daemons)
Ele controla daemons (processos que rodam em background). Exemplo:
- nginx;
- docker;
- ssh;
- mysql.
Comandos comuns:
systemctl start mysql systemctl stop mysql systemctl restart mysql systemctl status mysql
O systemctl é a ferramenta que conversa com o systemd.
Exemplo Ilustrativo do Systemd
Vamos usar uma analogia com um restaurante para explicar como o systemd funciona:
Antes do systemd (SysVinit) - Restaurante Desorganizado
Imagine um restaurante onde o gerente (SysVinit) faz tudo sequencialmente:
- Gerente chega: 10 minutos
- Gerente liga as luzes: 2 minutos
- Gerente espera as luzes ligarem completamente: 5 minutos
- Gerente abre a cozinha: 3 minutos
- Gerente espera a cozinha estar pronta: 10 minutos
- Gerente abre o caixa: 2 minutos
- Gerente espera o caixa estar pronto: 5 minutos
- Gerente chama os garçons: 1 minuto
- Gerente espera os garçons chegarem: 10 minutos
- Gerente abre a porta para clientes
Total: 48 minutos para abrir.
Depois do Systemd - Restaurante Organizado
Agora imagine o gerente (systemd) sendo inteligente e dando orientações simultâneas para todos os departamentos do restaurante:
Gerente: "Vocês podem TODOS fazer isso ao mesmo tempo!"
- Garçom 1: Liga as luzes (enquanto isso...)
- Chefe: Abre a cozinha (enquanto isso...)
- Caixa: Configura o sistema de pagamento (enquanto isso...)
- Garçom 2: Prepara as mesas (enquanto isso...)
Total: 10 minutos para abrir.

Representação em tirinha da diferença do SysVinit e do systemd.
Em resumo, o systemd é um gerenciador inteligente que:
- Inicia serviços em paralelo: inicialização mais rápida;
- Entende dependências: sabe quem precisa de quem;
- Monitora serviços: reinicia automaticamente se caírem;
- Centraliza logs: fácil de debugar problemas;
- Gerencia recursos: controla memória e CPU de cada serviço.
É como a diferença entre um restaurante onde tudo é feito por uma pessoa sequencialmente vs. um restaurante bem organizado onde vários funcionários trabalham em paralelo.
Exemplo Prático
Vamos criar um arquivo de serviço de exemplo:
sudo nano /etc/systemd/system/meu-app.service
Comando para criação do arquivo do serviço

Comando no terminal

Criação do arquivo do serviço.
Agora iremos colocar o seguinte conteúdo dentro do arquivo:
[Unit] Description=Minha Aplicação Web After=network.target # ↑ Diz: "Só inicie DEPOIS que a rede estiver pronta" [Service] Type=simple ExecStart=/usr/bin/python3 /home/user/app.py Restart=always # ↑ Diz: "Se a aplicação cair, reinicie automaticamente" [Install] WantedBy=multi-user.target # ↑ Diz: "Inicie automaticamente no boot" Conteúdo para colocar no arquivo.
Conteúdo para colocar no arquivo.

Conteúdo no arquivo.
Depois de criado, o arquivo do serviço aparece dentro da pasta /etc/systemd/system.

O serviço recém criado na pasta system do systemd.
Usando o serviço
Vamos usar alguns comandos para fazer o serviço funcionar e acompanhar o seu estado.
# Recarregar configuração sudo systemctl daemon-reload # Iniciar o serviço sudo systemctl start meu-app # Ver status sudo systemctl status meu-app Comandos para startar o serviço e acompanhar o seu estado.
Comandos para startar o serviço e acompanhar o seu estado.

Comandos no terminal e resultado do estado do serviço.
Para ver os logs do serviço, basta usar o seguinte comando:
journalctl -u meu-app -f
Comando para ver os logs em tempo real.

Logs do serviço.
Conclusão
O systemd revolucionou a forma como o Linux gerencia a inicialização e execução de serviços, transformando um sistema que era lento e desorganizado em uma máquina moderna e eficiente. Ele rapidamente se tornou o padrão em praticamente todas as distribuições Linux, apesar das críticas iniciais sobre sua complexidade e abrangência.
Ao permitir a execução paralela de serviços, centralizar logs, gerenciar dependências inteligentemente e monitorar processos automaticamente, systemd ofereceu melhorias tangíveis que beneficiaram tanto usuários de desktop quanto administradores de servidores.
Embora ainda existam vozes críticas que defendem alternativas mais minimalistas, a realidade é que systemd se tornou tão fundamental na infraestrutura moderna do Linux que é praticamente impossível removê-lo — para bem ou para mal, ele representou um passo necessário na evolução e modernização do sistema operacional que alimenta grande parte da internet e da computação em nuvem.
Achei super interessante conhecer e aprender sobre esse atual sistema de inicialização do Linux, assim como saber como era a realidade antes dele. É bem visível o impacto que ele causou no ecossistema Linux e o nível de performance que ele elevou o sistema operacional.
Espero que tenham gostado tanto quanto eu.
Obrigada pela atenção e até breve! 😁
Laryssa Ramos
