Imaginemos um script escrito em Python, chamado o_meu_script.py e guardado na pasta /home/utilizador/scripts.
Imaginemos agora que pretendemos que este script seja lançado automaticamente, após o arranque do computador (Linux Debian 11). Para tal, pode-se recorrer ao gestor de serviços ‘systemd‘ da seguinte forma (no Terminal):
Ir para a pasta onde se encontra o ficheiro ‘o_meu_programa.py’:
utilizador@hostname:~$ cd scripts
Tornar o ficheiro executável:
utilizador@hostname:~/scripts$ chmod +x o_meu_programa.py
Criar um ficheiro de serviço para o gestor ‘systemd’, com o mesmo nome que o do script, usado um editor de texto (e.g., ‘nano’ ou ‘vim’):
utilizador@hostname:~/scripts$ sudo nano /etc/systemd/system/o_meu_programa.service
Inserir o código abaixo, alterando os parâmetros necessários, de acordo com a sua realidade.
[unit]
Description=Descrição do meu script
[Service]
ExecStart=/usr/bin/python3 /home/utilizador/scripts/o_meu_programa.py
WorkingDirectory=/home/utilizador/scripts
Restart=always
User=utilizador
[Install]
WantedBy=multi-user.target
Após guardar o ficheiro de serviço, carregar o novo ficheiro de serviço, no gestor de serviços ‘systemd’:
utilizador@hostname:~/scripts$ sudo systemctl daemon-reload
Permitir que o ficheiro de serviço seja executado após o boot do computador:
utilizador@hostname:~/scripts$ sudo systemctl enable o_meu_programa.service
Lançar o serviço:
utilizador@hostname:~/scripts$ sudo systemctl start o_meu_programa.service
Verificar que o serviço foi lançado e encontra-se a correr normalmente:
utilizador@hostname:~/scripts$ sudo systemctl status o_meu_programa.service
Et voilà le travail! 🙂