Dette projekt omdanner din raspberry pi med display ind til et ur og skifter tilfældig citater hver 10 sekundt. Som staret automatisk når du tænder den. Citater kommer fra en txt
- Raspberry med display
Hent citater.py og citater.txt og lig den i /home/user fx /home/mg/citater.py som jeg brugerflade
Dette dokument beskriver, hvordan du opsætter systemd til at køre et Python-script (f.eks. citater.py) automatisk ved opstart af din Raspberry Pi.
- Du har en Raspberry Pi med en korrekt installeret Python 3.
- Du har et Python-script (f.eks.
citater.py
), som du ønsker at køre ved opstart. - Du har adgang til en terminal og root-rettigheder på Raspberry Pi.
- Åbn terminalen og opret en ny systemd-servicefil:
sudo nano /etc/systemd/system/citater.service
Indsæt følgende indhold i servicefilen:
[Unit]
Description=Viser citater og klokken på touchscreen
After=graphical.target
[Service]
ExecStartPre=/bin/sleep 10
ExecStart=/usr/bin/python3 /home/mg/citater.py
WorkingDirectory=/home/mg
StandardOutput=inherit
StandardError=inherit
Restart=always
User=mg
Environment=DISPLAY=:0
Environment=XDG_RUNTIME_DIR=/run/user/1000
[Install]
WantedBy=graphical.target
After=graphical.target: Sørger for, at servicen først starter, når den grafiske brugerflade er klar.
ExecStartPre=/bin/sleep 10: Tilføjer en 10-sekunders forsinkelse før scriptet starter, så systemet er klar. ExecStart: Kører Python-scriptet.
Environment=DISPLAY=:0 og
XDG_RUNTIME_DIR=/run/user/1000: Sikrer, at scriptet har adgang til skærmen. Gem og luk filen: CTRL + X, derefter Y og ENTER.
Genindlæs systemd og aktiver servicen:
sudo systemctl daemon-reload
sudo systemctl enable citater.service Start servicen: sudo systemctl start citater.service Bekræft, at servicen kører: sudo systemctl status citater.service
Genstart din Raspberry Pi for at teste, om servicen starter automatisk ved opstart: sudo reboot Efter reboot, tjek om servicen kører: sudo systemctl status citater.service Fejlfinding
Hvis servicen ikke starter korrekt, kan du se systemd-loggen for eventuelle fejl: journalctl -u citater.service -b Hvis du får fejlmeddelelsen XDG_RUNTIME_DIR is invalid or not set in the environment, sørg for, at miljøvariablerne er korrekt indstillet i systemd-servicefilen. Ekstra tips
Hvis du vil ændre forsinkelsen før scriptet starter, kan du justere ExecStartPre=/bin/sleep 10 til en anden værdi. Sørg for, at din Python-skript ikke indeholder fejl og fungerer korrekt, når du kører det manuelt. Denne guide hjælper dig med at sikre, at dit script automatisk starter ved opstart og kører stabilt på din Raspberry Pi.
- Installation: Forklarer, hvordan du opretter og konfigurerer systemd-servicefilen.
- Fejlfinding: Giver tips til, hvordan man kan debugge eventuelle problemer, der opstår, f.eks. hvis systemet ikke starter scriptet korrekt.
- Test: Forklarer, hvordan man kan sikre, at servicen starter korrekt efter en genstart.
Slut