Ako spustiť skript pri štarte na malinovej pi?

1. Vytvorte súbor a.service pre svoj skript.
2. Skopírujte súbor do / etc / systemd / system.
3. Spustením služby otestujte skript.
4. Použite systemctl na spustenie pri štarte.

Ktorý zabezpečí spustenie skriptu pri štarte
Pokiaľ sa skript vykoná bez chyby, môžete spustiť príkaz, ktorý zabezpečí spustenie skriptu pri štarte.

Či už sa jedná o multimediálne centrum, webový server, hernú konzolu alebo jednoducho o počítač, existuje nespočetné množstvo dôvodov, prečo budete potrebovať automatické spustenie konkrétneho programu alebo skriptu po zavedení systému Raspberry Pi. Táto príručka vás naučí, ako vynútiť spustenie skriptu v čase zavádzania buď jeho pridaním ako služby (pred načítaním pracovnej plochy), alebo jej pridaním do súboru automatického spustenia (po načítaní pracovnej plochy).

Metóda 1 z 2: pridanie skriptu ako služby

  1. 1
    Vytvorte pre svoj skript súbor a.service. Táto metóda vás naučí, ako vytvoriť službu, ktorá spustí váš skript pri štarte pred spustením LXDE. Ak skript vyžaduje závislosti, ktoré nie sú aktívne okamžite (napríklad sieťové pripojenie alebo čokoľvek iné), služba oznámi vášmu skriptu, aby počkal, kým sa tieto procesy načítajú. Vytvorte súbor (nazvaný scriptname.service), ktorý sleduje túto štruktúru a podľa potreby nahradí cesty a popis:

    [Jednotka]

    Popis = Moja služba

    After = network-online.target

    [Služba] ExecStart = / usr / bin / python3 -u main.py

    WorkingDirectory = / home / pi / myscript

    StandardOutput = dediť

    StandardError = inherit

    Reštart = vždy

    Užívateľ = pi

    [Inštalácia]

    WantedBy = multi-user.target

  2. 2
    Skopírujte službu do / etc / system / system. Budete to musieť urobiť ako root, takže použite sudo. Tu je príklad:
    • sudo cp myscript.service /etc/systemd/system/myscript.service
  3. 3
    Službu otestujte spustením. Pred nastavením automatického spustenia služby sa budete musieť uistiť, že skript po spustení funguje správne. Ak chcete spustiť skript prostredníctvom služby, použijete tento systemctl príkaz:
    • sudo systemctl start myscript.service
    • V prípade potreby môžete zastaviť službu spustením rovnaký príkaz, nahradí start sa stop.
  4. 4
    Nastavte službu tak, aby sa spúšťala pri štarte. Pokiaľ sa skript vykoná bez chyby, môžete spustiť príkaz, ktorý zabezpečí spustenie skriptu pri štarte:
    • sudo systemctl enable myscript.service
Ktorá spustí váš skript pri štarte pred spustením LXDE
Táto metóda vás naučí, ako vytvoriť službu, ktorá spustí váš skript pri štarte pred spustením LXDE.

Metóda 2 z 2: použitie súboru automatického spustenia

  1. 1
    Pochopte požiadavky a ako to funguje. Táto metóda vyžaduje desktopové prostredie PIXEL s najnovšou verziou operačného systému Raspbian. Dosahuje sa to úpravou súboru „autostart“, ktorý spúšťa príkazy pri štarte v desktopovom prostredí LXDE, čo je rámec, na ktorom je postavený desktop PIXEL spoločnosti Raspberry Pi. Táto metóda sa uprednostňuje v scenároch, kde:
    • Váš skript vyžaduje na spustenie prostredie pracovnej plochy
    • Váš skript musí byť spustený z okna terminálu
    • Chcete určiť, pre ktorých používateľov sa skript automaticky spustí
  2. 2
    Otvorte súbor automatického spustenia v nano textovom editore. V novom okne terminálu spustite nasledujúci príkaz:
    • sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart
  3. 3
    Pomocou klávesov so šípkami prejdite na koniec druhého riadku a stlačte enter. Týmto sa nad @xscreensaver -no-splash položkou vytvorí nový riadok. Mnoho používateľov uviedlo, že príkazy pridané pod tento riadok sa nespúšťajú úspešne, takže je bežné pridať svoje vlastné príkazy nad @xscreensaver položku.
  4. 4
    Pridajte príkaz na spustenie skriptu. Toto je miesto, kde máte najviac možností, pretože môžete zadať ľubovoľný príkaz terminálu, ktorý by ste normálne použili na spustenie skriptu. Ak chcete napríklad spustiť bash skript s názvom "myscript.sh", ktorý sa nachádza v domovskom adresári užívateľa "pí" dalo by sa zadaním príkazu: /home/pi/myscript.sh. Rovnako, ak sú na spustenie skriptu potrebné povolenia superužívateľa, môžete pred príkazom dokonca predsloviť sudo.
  5. 5
    Zahrňte úplné cesty ku každému názvu súboru. Napríklad na spustenie skriptu Python, ktorý vyžaduje oprávnenie superužívateľa s názvom „myscript.py“, ktorý je umiestnený v domovskom adresári používateľa „pi“, by ste zadali úplnú cestu k samotnému skriptu Python aj k interpretovi Pythonu, napríklad ako sudo /usr/bin/python /home/pi/myscript.py.
    Aby sa váš skript spúšťal pri štarte
    Ak už nechcete, aby sa váš skript spúšťal pri štarte, jednoducho znova upravte súbor automatického spustenia, iba tentokrát vymažte riadky, ktoré ste pridali predtým.
  6. 6
    Rozhodnite sa, či chcete pri spustení spustiť skript v novom okne terminálu. Na tento účel môžete použiť @lxterminal príkaz s -e modifikátorom, za ktorým nasleduje úplná cesta k vášmu skriptu v úvodzovkách. Napríklad:
    • @lxterminal -e "/home/pi/myscript.sh"

    • Týmto sa skript vykoná z nového okna terminálu.
  7. 7
    Skript spustíte zadaním správnych príkazov. Po zadaní stlačte Ctrl+ X a potom uložte zmeny podľa pokynov na obrazovke.
    • Ak už nechcete, aby sa váš skript spúšťal pri štarte, jednoducho znova upravte súbor automatického spustenia, iba tentokrát vymažte riadky, ktoré ste pridali predtým. Po uložení a ukončení sa skript po spustení už nebude automaticky spúšťať.
  8. 8
    Reštartujte a otestujte. Používa sa sudo reboot na reštartovanie vášho Raspberry Pi. Ak skript funguje tak, ako bol navrhnutý, spustí sa jeden, ktorý sa spustí správcom okien.
Súvisiace články
  1. Ako pripojiť Macbook Pro k tlačiarni?
  2. Ako odstrániť malware z PDFCreator?
  3. Ako odstrániť newfolder.exe vírus?
  4. Ako odstrániť rootkit?
  5. Ako odstrániť Feed.helperbar.com Redirect Virus?
  6. Ako aktualizovať BIOS počítača?
FacebookTwitterInstagramPinterestLinkedInGoogle+YoutubeRedditDribbbleBehanceGithubCodePenWhatsappEmail