Gerenciando serviços com systemd
Inicie, pare e habilite serviços.
Gerenciando serviços com systemd é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.
Gerenciar serviços de longa duração
O módulo systemd controla serviços gerenciados pelo systemd, o sistema de inicialização da maioria das distribuições modernas do Linux. Com ele, você inicia, para e habilita esses serviços.
Iniciar um serviço
Forneça o nome do serviço e defina state: started. O módulo o inicia somente se ele ainda não estiver em execução, mantendo a idempotência.
ansible.builtin.systemd:
name: nginx
state: startedParar um serviço
Use state: stopped para interromper um serviço. Como sempre, ele só age se o serviço estiver em execução no momento.
ansible.builtin.systemd:
name: nginx
state: stoppedReiniciar e recarregar
state: restarted reinicia completamente um serviço, enquanto reloaded lê novamente a configuração sem interromper as conexões. Reiniciar é o padrão seguro.
ansible.builtin.systemd:
name: nginx
state: restartedIniciar e habilitar são coisas diferentes
state controla se um serviço é executado agora. enabled controla se ele é iniciado automaticamente na inicialização. Eles são independentes.
Habilitar na inicialização
Defina enabled: true para que o serviço seja iniciado automaticamente após uma reinicialização. Combine isso com started para abranger o momento atual e o futuro.
ansible.builtin.systemd:
name: nginx
state: started
enabled: trueRecarregar o daemon do systemd
Depois de adicionar um novo arquivo de unidade, defina daemon_reload: true para que o systemd leia novamente a configuração antes de você agir sobre a unidade.
ansible.builtin.systemd:
name: myapp
daemon_reload: trueA idempotência é mantida
Solicite started para um serviço em execução e obtenha ok, não changed. O módulo verifica o estado atual antes de fazer qualquer coisa.
É necessário acesso root
Controlar serviços exige privilégios; portanto, adicione become: true. Sem isso, o systemd recusa a operação e a tarefa falha.
- name: Enable nginx
become: true
ansible.builtin.systemd:
name: nginx
enabled: trueTambém existe o módulo service
O módulo genérico service funciona em vários sistemas de inicialização. Use systemd diretamente quando precisar de opções exclusivas dele, como daemon_reload.
Combina bem com manipuladores
Um padrão comum é restart um serviço somente quando a configuração dele é alterada. Os manipuladores, que você conhecerá mais adiante, acionam essa reinicialização quando há uma alteração.
Verificação rápida
Você quer que nginx esteja em execução agora e também após cada reinicialização.
Recapitulação
O módulo systemd inicia, para, reinicia e habilita serviços. Lembre-se de que state significa agora e enabled significa na inicialização. ⚙️
Perguntas Frequentes
A aula “Gerenciando serviços com systemd” é grátis?
Sim — o texto completo de “Gerenciando serviços com systemd” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de DevOps Bootcamp, atualize para CoddyKit PRO. O curso de DevOps Bootcamp inclui 4 aulas no total.
O que vou aprender em “Gerenciando serviços com systemd”?
Inicie, pare e habilite serviços. Você pratica DevOps Bootcamp com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar DevOps Bootcamp?
Nenhuma experiência prévia é necessária. DevOps Bootcamp no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Gerenciando serviços com systemd”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de DevOps Bootcamp?
Sim. Cada aula de DevOps Bootcamp inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- O que é realmente um módulo
- Instalando pacotes com o módulo package
- Gerenciando serviços com systemd
- Lendo a documentação com ansible-doc