Como executar um programa ao iniciar o Raspberry Pi?
Comentáriosⓘ Cet article peut avoir été partiellement ou totalement traduit à l'aide d'outils automatiques. Nous nous excusons des erreurs que cela pourrait engendrer.
Às vezes, precisamos executar um programa ou uma linha de comando quando nosso Raspberry Pi é inicializado.
Este é particularmente o caso quando fabricamos um objeto para automação residencial e queremos iniciar um programa automaticamente quando o objeto é conectado.
Neste tutorial, veremos uma maneira muito simples de iniciar um programa ao iniciar o Raspberry.
O material que vamos usar.
Neste tutorial, só precisamos:
Se quiser concluir este tutorial sem poder acessar diretamente o Raspberry Pi, você também precisará de um PC que possa ler cartões SD ou usar um adaptador.
Inicie um programa quando o Raspberry Pi for iniciado com rc.local.
Para Mac OS e Windows, você precisará acessar a partição rootfs se quiser fazer isso de seu PC. Para fazer isso, consulte nosso tutorial para ler uma partição Linux do Mac e do Windows.
A maneira mais fácil de iniciar um programa ao iniciar o Raspberry Pi é usar o arquivo /etc/rc.local
.
Este arquivo contém um conjunto de comandos que serão executados pouco antes de o Raspberry Pi terminar de inicializar.
Para iniciar um programa quando o Raspberry Pi é inicializado, você só precisa modificar o arquivo /etc/rc.local
no cartão SD (do Pi, ou modificando o arquivo /etc/rc.local
na pontuação rootfs
do cartão conectado ao seu PC).
Para iniciar o programa, basta procurar a linha:
exit 0
no arquivo e adicione a linha de comando chamando seu programa antes da linha exit
.
Por exemplo, se eu quiser chamar um script Python 3 chamado example.py
e localizado na pasta /home/pi
na inicialização, substituirei a linha de saída 0 por:
/usr/bin/python3 /home/pi/example.py
Alguns pontos importantes devem ser observados.
Primeiro ponto, o programa será executado pelo usuário root
e, portanto, terá todos os direitos. Cuidado com o que você está fazendo!
Segundo ponto, você deve sempre usar caminhos absolutos e não relativos, o comportamento dos caminhos relativos é imprevisível.
Terceiro e último ponto, seu programa deve devolver o controle ao script ou o Raspberry Pi nunca conseguirá terminar a inicialização. Se o seu programa executa um loop infinito, você deve executá-lo em segundo plano adicionando um &
após o pedido. No nosso caso, isso daria:
/usr/bin/python3 /home/pi/example.py &
Seu programa será iniciado corretamente ao iniciar o Raspberry Pi!