Como executar um script na inicialização no pi de framboesa

Seja usado como um centro de mídia, servidor da Web, console de jogos, ou simplesmente um computador, há inúmeras razões pelas quais você pode precisar de um determinado programa ou script para iniciar automaticamente quando você inicializar o seu Raspberry Pi. ThiTeaches você como forçar um script a começar no momento da inicialização, adicionando-o como um serviço (antes da área de trabalho), ou adicionando-o ao seu arquivo de AutoStart (após a área de trabalho).

Passos

Método 1 de 2:
Adicionando um script como um serviço
  1. Imagem intitulada 8353066 1
1. Criar uma .Arquivo de serviço para o seu script. Este método irá ensinar a você como criar um serviço que executa seu script no momento da inicialização antes do início do LXDE. Se o script precisar de dependências que não estão ativos imediatamente (como rede ou qualquer coisa gráfica), o serviço informará seu script para aguardar até que esses processos. Crie um arquivo (chamado ScriptName.serviço) A seguir esta estrutura, substituindo os caminhos e descrição conforme necessário:

[Unidade]

Descrição = meu serviço

Depois = rede online.alvo

[Serviço]

Execstart = / usr / bin / python3 -u principal.py

FuncionárioDirectory = / Home / PI / MyScript

StandardOutput = herda

StandardError = herdar

Reiniciar = sempre

User = pi

[Instalar]

Possível = multiusuário.alvo

  • Imagem intitulada 8353066 2
    2. Copie o serviço para / etc / System / System. Você precisará fazer isso como root, então use sudo. Aqui está um exemplo:
  • sudo cp myscript.Serviço / etc / Systemd / System / MyScript.serviço
  • Imagem intitulada 8353066 3
    3. Teste o serviço executando. Antes de definir o serviço para iniciar automaticamente, você desejará garantir que o script seja executado corretamente quando executado. Para executar o script através do serviço, você usará o Systemctl Comando assim:
  • Sudo Systemctl Inicie o MyScript.serviço
  • Você pode parar o serviço, se necessário, executando o mesmo comando, substituindo começar com Pare.
  • Imagem intitulada 8353066 4
    4. Definir o serviço para ser executado no tempo de inicialização. Enquanto o script executa sem erro, você pode executar o comando que garante que o script seja executado no momento da inicialização:
  • sudo systemctl ativar o MyScript.serviço
  • Método 2 de 2:
    Usando o arquivo AutoStart
    1. Imagem intitulada 8353066 5
    1. Entenda os requisitos e como funciona. Este método requer o ambiente de desktop de pixel com a versão mais recente do sistema operacional Raspbian. É conseguido editando um "começo automático" arquivo que executa comandos na inicialização no ambiente de desktop LXDE, que é a estrutura a área de trabalho de pixel da Raspberry Pi é construída em. Este método é preferido em cenários onde:
    • Seu script requer o ambiente de desktop para executar
    • Seu script precisa ser executado de uma janela de terminal


    • Você deseja especificar quais usuários o script será automático para
  • Imagem intitulada 8353066 6
    2. Abra o arquivo AutoStart no editor de texto Nano. Em uma nova janela terminal, execute o seguinte comando:
  • sudo nano / home / pi /.Config / LXSession / LXDE-PI / AutoStart
  • Imagem intitulada 8353066 7
    3. Use as teclas de seta para navegar até o final da segunda linha e pressione ↵ Enter. Isso vai criar uma nova linha acima do @xscreensaver -No-splash entrada. Muitos usuários relataram que os comandos adicionados abaixo dessa linha não são executados com êxito, por isso é uma prática comum adicionar seus comandos personalizados acima do @xscreensaver entrada.
  • Imagem intitulada 8353066 8
    4. Adicione um comando para iniciar seu script. Isto é onde você tem a maioria das opções que você pode inserir qualquer comando terminal que normalmente usaria para lançar seu script. Por exemplo, para executar um script bash chamado "MyScript.sh" que está localizado no diretório inicial do usuário "PI" Ninguém entraria no comando: / Home / PI / MyScript.sh. Da mesma forma, se as permissões superusórias forem necessárias para executar o script, você pode até mesmo prefaciar o comando com sudo.
  • 5. Incluir os caminhos completos para todos os nome do arquivo. Por exemplo, para executar um script Python que requer permissões superusores chamadas "MyScript.py" que está localizado no diretório inicial do usuário "PI", Você entraria no caminho completo para o próprio script Python e o intérprete Python, como sudo / usr / bin / python / home / pi / myscript.py.
  • Imagem intitulada 8353066 9
    6. Decida se você deseja executar seu script em uma nova janela terminal na inicialização. Para isso, você pode usar o @lxterminal comando com o -E Modificador seguido pelo caminho completo do seu script nas citações. Por exemplo:

    @lxterminal -e "/ home / pi / myscript.sh"

  • Isso executará o script de uma nova janela de terminal.
  • Imagem intitulada 8353066 10
    7. Digite os comandos apropriados para iniciar o script. Uma vez inserido, pressione Ctrl+X, e depois siga as instruções na tela para salvar suas alterações.
  • Se você não quiser que seu script seja executado na inicialização, basta editar o arquivo AutoStart mais uma vez, apenas desta vez excluir as linhas que você adicionou anteriormente. Depois de salvar e sair, seu script não será mais executado automaticamente na inicialização.
  • Imagem intitulada 8353066 11
    8. Reinicie para testar. Usar sudo reinicializar Para reiniciar seu PI de framboesa. Se o script funcionar como projetado, ele será iniciado um gerenciador de janelas.
  • Compartilhe na rede social:
    Semelhante