Så här kör du ett skript vid start på raspberry pi

Oavsett om det används som ett mediecenter, webbserver, spelkonsol eller helt enkelt en dator, det finns otaliga skäl till varför du kanske behöver ett visst program eller ett skript för att automatiskt börja när du startar din hallon pi. Thistaaches du hur man tvingar ett skript att börja vid starttiden genom att antingen lägga till det som en tjänst (före skrivbordet) eller genom att lägga till den i din autostart-fil (efter skrivbordsbelastningen).

Steg

Metod 1 av 2:
Lägga till ett skript som en tjänst
  1. Bild med titeln 8353066 1
1. Skapa en .Servicefil för ditt skript. Denna metod kommer att lära dig hur du skapar en tjänst som kör ditt skript vid starttid innan LXDE startar. Om skriptet kräver beroenden som inte är aktiva omedelbart (t.ex. nätverk eller något grafiskt), kommer tjänsten att berätta för ditt skript att vänta tills de processer laddas. Skapa en fil (kallad skriftnamn.service) som följer denna struktur, ersätter banorna och beskrivningen efter behov:

[Enhet]

Beskrivning = Min tjänst

After = nätverk-online.mål

[Service]

ExecStart = / Usr / Bin / Python3 -u Main.py

Arbetsdirectory = / home / pi / myScript

Standardoutput = ärv

StandardError = ärv

Starta om = alltid

Användare = pi

[Installera]

Önskedby = multi-användare.mål

  • Bild med titeln 8353066 2
    2. Kopiera tjänsten till / etc / system / system. Du måste göra det som root, så använd sudo. Här är ett exempel:
  • sudo cp myScript.Service / etc / systemd / system / myScript.service
  • Bild med titeln 8353066 3
    3. Testa tjänsten genom att köra den. Innan du ställer in tjänsten för att starta automatiskt, vill du se till att skriptet körs ordentligt när du körs. För att köra skriptet via tjänsten, använder du systemctl Kommando så här:
  • sudo systemctl starta myscript.service
  • Du kan stoppa tjänsten om det behövs genom att köra samma kommando, ersätta Start med sluta.
  • Bild med titeln 8353066 4
    4. Ställ in tjänsten för att köra vid starttid. Så länge som skriptet kör utan fel kan du köra kommandot som garanterar att skriptet körs vid starttid:
  • sudo systemctl aktivera myscript.service
  • Metod 2 av 2:
    Använda Autostart-filen
    1. Bild med titeln 8353066 5
    1. Förstå kraven och hur det fungerar. Den här metoden kräver Pixel-skrivbordsmiljön med den senaste versionen av det raspbiska operativsystemet. Det uppnås genom att redigera en "autostart" fil som kör kommandon vid uppstart i LXDE-skrivbordsmiljön, vilket är ramverket Raspberry Pi`s Pixel-skrivbordet är byggt på. Denna metod är att föredra i scenarier där:
    • Ditt skript kräver skrivbordsmiljön att springa
    • Ditt skript behöver springa från ett terminalfönster
    • Du vill ange vilka användare som skriptet ska autostart för
  • Bild med titeln 8353066 6
    2. Öppna Autostart-filen i Nano Text Editor. I ett nytt terminalfönster, kör följande kommando:
  • sudo nano / home / pi /.config / lxsession / lxde-pi / autostart
  • Bild med titeln 8353066 7
    3. Använd piltangenterna för att navigera till slutet av den andra raden och tryck på ↵ Ange. Detta skapas en ny linje ovanför @xScreensaver -No-Splash inträde. Många användare har rapporterat att kommandon som läggs till under den här raden, kör inte framgångsrikt så det är vanligt att lägga till dina anpassade kommandon ovanför @xScreensaver inträde.
  • Bild med titeln 8353066 8
    4. Lägg till ett kommando för att starta ditt skript. Det är här du har de flesta alternativ som du kan ange något plintkommando som du normalt skulle använda för att starta ditt skript. Till exempel, för att köra ett bash-skript som heter "myscript.sh" som ligger i användarens hemkatalog "pi" Man skulle komma in i kommandot: / Hem / Pi / MyScript.sh. På samma sätt, om superuserbehörigheter krävs för att köra skriptet kan du till och med förordet kommandot med sudo.
  • 5. Inkludera de fulla vägarna till varje filnamn. Till exempel, för att köra ett python-skript som kräver superuserbehörigheter som heter "myscript.py" som ligger i användarens hemkatalog "pi", Du skulle komma in i hela vägen till både Python-skriptet själv och Python-tolken, som sudo / usr / bin / python / home / pi / myScript.py.
  • Bild med titeln 8353066 9
    6. Bestäm om du vill köra ditt skript i ett nytt terminalfönster vid uppstart. För detta kan du använda @lxterminal kommando med -e Modifierare följt av den fullständiga vägen för ditt skript i citat. Till exempel:

    @lxterminal -e "/ Hem / Pi / MyScript.sh"

  • Detta kommer att utföra skriptet från ett nytt terminalfönster.
  • Bild med titeln 8353066 10
    7. Ange rätt kommandon för att starta ditt skript. När du har angett, tryck på Ctrl+X, och följ sedan instruktionerna på skärmen för att spara dina ändringar.
  • Om du inte vill att ditt skript ska köras på uppstart längre, bara redigera Autostart-filen igen, bara den här gången raderar de linjer du har lagt till tidigare. När du har sparat och avsluta, kommer ditt skript inte längre att köras automatiskt vid start.
  • Bild med titeln 8353066 11
    8. Starta om för att testa. Använda sig av sudo omstart För att starta om din Raspberry Pi. Om skriptet fungerar som utformat, startar det en Window Manager startar.
  • Dela på det sociala nätverket:
    Liknande