Criando serviços que se iniciam automaticamente no Linux com systemd/systemctl

Ainda não tive tempo de construir um tutorial, mas aqui vão as referências mais importantes que me baseei para construir os serviços.

  • Arquivos .service vão na pasta /lib/systemd/system/
  • Dono do arquivo root:root
  • Permissão -rw-r–r–, ou 644

Exemplo de arquivo .service no systemd do Ubuntu 16.04:

[Unit]
Description=Monitor de Ordens de Produção - Teste
After=network.target

[Service]
Type=simple
Restart=always
RestartSec=1
StartLimitInterval=0
ExecStart=/usr/bin/python3 /home/ubuntu/"Monitores de Ordem de Producao"/hello.py

[Install]
WantedBy=multi-user.target

Descobrindo quais serviços estão instalados no systemd e quais seus estados

systemctl list-unit-files

Referências

Tutorial: Criando um serviço no linux com o systemd
https://medium.com/@benmorel/creating-a-linux-service-with-systemd-611b5c8b91d6

Tutorial 2: Criando um serviço no linux com systemd
https://www.devdungeon.com/content/creating-systemd-service-files

Significado dos parêmetros usados no arquivo .service
https://www.digitalocean.com/community/tutorials/understanding-systemd-units-and-unit-files

Documentação oficial do Linux sobre os scripts de inicialização em /etc/init.d
http://refspecs.linuxbase.org/LSB_3.0.0/LSB-PDA/LSB-PDA/initscrcomconv.html

Cinco maneiras diferentes de rodar um programa automaticamente no Linux
https://www.dexterindustries.com/howto/run-a-program-on-your-raspberry-pi-at-startup/

Criando um systemd com timer (substituto do cron)
https://medium.com/horrible-hacks/using-systemd-as-a-better-cron-a4023eea996d

Documentação do Redhat Linux 7 sobre systemd
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/sect-managing_services_with_systemd-unit_files

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *