Seneste forumindlæg
Køb / Salg
 * Uofficiel Black/White liste V3
Login / opret bruger

Forum \ Software \ Operativsystemer

Raspberry Pi OS - Sleep command i autostart

Af Junior Supporter TLW | 05-08-2024 13:04 | 1025 visninger | 16 svar, hop til seneste
Hej. Nogen Linux/Raspberry eksperter her? Jeg sidder med en Raspberry som skal vise en hjemmeside, i Chromium, som infoskærm. Den må ikke køre i inprivate pga. den smider config til infosiden hvis den gør. Problemet er, at hvis hjemmesiden starter før Wifi forbinder, så ser nogle af billeder "tomme" ud. Enter som sort skærm eller som tomt billede. Jeg har forsøgt at få den til at vente 30 sek. med at starte Chrome, men enten så starter det aldrig eller også starter det med det samme. I min autostart fil har jeg forsøgt med: @chromium-browser --incognito --noerrdialogs –noerrors--disable-infobars --disable-session-crashed-bubble –start-fullscreen HTTPS://min-web-side[...] Dette er normal start. og @reboot sleep 30 && @chromium-browser --incognito --noerrdialogs –noerrors--disable-infobars --hide-crash-restore-bubble –start-fullscreen HTTPS://min-web-side[...] Starter ingen ting. @reboot sleep 30 @chromium-browser --incognito --noerrdialogs –noerrors--disable-infobars --hide-crash-restore-bubble –start-fullscreen HTTPS://min-web-side[...] Starter ingen ting. reboot sleep 30 @chromium-browser --incognito --noerrdialogs –noerrors--disable-infobars --hide-crash-restore-bubble –start-fullscreen HTTPS://min-web-side[...] Starter lige så hurtigt som normalt. Jeg har ikke rodet med Linux eller Raspberry OS så jeg kan ikke selv finde fejlen. Resten af filen ser sådan ud: (chromium står til sidst i filen). @xset s noblank @xset s off @xset -dpms @unclutter -idle 0
--
He who runs today. Lives to run another day! - Red Dwarf
#1
SShadowS
Guru
05-08-2024 13:09

Rapporter til Admin
Tag en snak med ChatGPT, så skal du nok finde en løsning på det trivielle problem. Vel noget ala dette du søger? https://chatgpt.com[...]
--
7950X3D|Crosshair X670E Hero|64GB RAM ASUS4090STRIX-OC|PG279Q 980 PRO 2TB|970 EVO+ 2TB|Samsung 860 PRO 2TB 2xSamsung860 QVO 2TB|Corsair AX1600i
#2
TLW
Junior Supporter
05-08-2024 13:26

Rapporter til Admin
#1 Jo. Det ser rigtigt ud. Men det kan jeg vel ikke skrive ind i autostart ? Jeg skal så oprette en fil og få den til at køre i autostart, ikke?
--
He who runs today. Lives to run another day! - Red Dwarf
#3
NitroBlast
Guru
05-08-2024 13:40

Rapporter til Admin
Du skal hverken bruge cron eller systemd til formålet, da de som udgangspunkt er beregnet til baggrunds-tjenester. Prøv metoden beskrevet i første svar her: https://forums.raspberrypi.com[...]
--
http://xlinx.dk[...] i7 2600K, 16GB PC3-12800, GA-Z68XP-UD4 R1, GTX 560Ti HAWK, 250GB 840 EVO
--
Sidst redigeret 05-08-2024 13:45
#4
inckie
Guru
05-08-2024 13:45

Rapporter til Admin
Kan du ikke bruge systemd og starte Chromimum som en user service, her kan du sætte hvilke betingelser der skal være opfyldt, så som f.eks. network-online.target og der i øvrigt skal være startet en grafisk session ?
--
https://twitter.com[...] https://linuxmint.com[...] - Få dit privatliv tilbage. https://cinnamon-spices.linuxmint.com[...]
--
Sidst redigeret 05-08-2024 13:46
#5
TLW
Junior Supporter
05-08-2024 14:11

Rapporter til Admin
Jeg er totalt noob til det her. :( Det er en løsning som skal genbruges på flere maskiner og til flere skærme, så jeg forsøger at fremstille en vejledning til det. Jeg fik først autorun til at køre ved at ændre det fra Wayland til X11. (Sudo raspi-config og tryk enter. I den nye menu vælges der ”AdvancedOptions” -> Wayland. Sæt den derefter til X11 og tryk OK.) Men findes der en RUN på Raspberry ligesom på Windows? Så kan man vel køre det via. det? Jeg ved ikke hvad bedste løsning vil være. Det skal bare virke :) Men hvis jeg opretter en fil som den loader ved opstart som kigger om der er forbindelse, så forhinder det vel ikke autostart i at køre det som ligger i den INDEN det første script melder tilbage?
--
He who runs today. Lives to run another day! - Red Dwarf
#6
NitroBlast
Guru
05-08-2024 14:28

Rapporter til Admin
#5 Den officielle guide er her: https://forums.raspberrypi.com[...] Når du har fået det til at virke på én installation, så kan du kopiere denne installation til de andre Pi's.
--
http://xlinx.dk[...] i7 2600K, 16GB PC3-12800, GA-Z68XP-UD4 R1, GTX 560Ti HAWK, 250GB 840 EVO
#7
TLW
Junior Supporter
05-08-2024 15:17

Rapporter til Admin
#6. Men det er vel lige efter den guide slutter, at jeg er nu? Jeg skal have den til (i autostart filen): @unclutter -idle 0 VENTE PÅ NETVÆRK @chromium-browser bla bla bla. Som jeg har forstået det, så betyder @ i starten, at den genstarter Chrome hvis det går ned, så den funktion skulle helst blive. Undskyld hvis jeg er lidt langsom, men jeg er totalt noob her. :)
--
He who runs today. Lives to run another day! - Red Dwarf
#8
NitroBlast
Guru
05-08-2024 15:35

Rapporter til Admin
Hvis du kan få chromium til at åbne som ønsket, så kan du lave et lille script, som pinger netværket, indtil der er hul igennem, inden det starter chromium. ------ #!/bin/bash ping -c 2 -w 60 google.com if [ $? -eq 0 ]; then chromium-browser --incognito --noerrdialogs –noerrors--disable-infobars --hide-crash-restore-bubble –start-fullscreen https://noget[...] fi ------ Scriptet ovenfor pinger "google.com" (det ville være smart at pinge det domæne, du vil have fat i med chromium) i 60 sekunder, og når der er svaret 2 gange, så startes chromium. Kommer der ikke 2 svar i løbet af 60 sekunder, så afsluttes scriptet uden at starte chromium.
--
http://xlinx.dk[...] i7 2600K, 16GB PC3-12800, GA-Z68XP-UD4 R1, GTX 560Ti HAWK, 250GB 840 EVO
--
Sidst redigeret 05-08-2024 15:39
#9
inckie
Guru
05-08-2024 16:03

Rapporter til Admin
Prøv med en systemd user service, som jeg skrev før. Systemd er designet til at håndtere services og deres dependencies (og meget mere), så gør brug af Systemd. I øvrigt, lad være med at følge råd om at gå tilbage til Xorg, hvis det ikke er nødvendigt - Xorg er ved at blive udfaset, så vælg en løsning, der er agnostisk eller Wayland-orienteret. Jeg har lige testet dette med min Ubuntu, og Chromium (snap) starter, når jeg logger ind: 1. Opret en user systemd service mappe mkdir -p ~/.config/systemd/user 2. Opret en Chromium systemd service unit fil cat <<EOL > ~/.config/systemd/user/chromium.service [Unit] Description=Start Chromium after desktop session and network are up After=graphical-session.target network-online.target Wants=graphical-session.target network-online.target PartOf=graphical-session.target [Service] ExecStart=/snap/bin/chromium # Ret til din chromium path og dine argumenter Restart=on-failure [Install] WantedBy=default.target EOL Gør dig en tjeneste og forstå, hvad network.online helt præcist betyder: https://systemd.io[...] det er ikke sikkert det er godt nok i dit tilfælde, det kan være at du skal tilføje noget ala, dette, for at tjekke om der er internet forbindelse og ikke bare om "netværket er oppe", hvis network-online.target ikke er godt nok: [Service] ExecStartPre=/bin/sh -c 'until ping -c1 hardwareonline.dk; do sleep 1; done;' # Ikke testet, mest bare for at vise dig konceptet 3. Enable Chromium servicen systemctl --user daemon-reload # Gør dette hver gang du ændre service unit filen. systemctl --user enable chromium.service 4. Tjek at servicen kan starte systemctl --user start chromium.service # Start Chromium manualt for at tjekke om servicen virker. 5. Genstart sudo reboot
--
https://twitter.com[...] https://linuxmint.com[...] - Få dit privatliv tilbage. https://cinnamon-spices.linuxmint.com[...]
--
Sidst redigeret 05-08-2024 16:03
#10
Thomas G
Junior Supporter
06-08-2024 00:14

Rapporter til Admin
Hvad med en mere simpel løsning. En simpel html/javascript side der redirecter til den rette side efter de 30 sekunder ? https://stackoverflow.com[...] Du behøver ikke en webserver eller andet, blot pege browseren ned på dine lokale filer. autowait.html +js -> 30 sek -> ditflottesite.nu Dermed er du fri af alt det komplekse. En del af de andre løsninger vil virke, men denne her er meget simpel og ligetil.
--
#11
TLW
Junior Supporter
06-08-2024 13:10

Rapporter til Admin
Tak for de gode forslag. Min hjerne er vist ved at stå af for det virker bare ikke for mig :( Men en kollega er tilbage fra ferie på mandag og han kan måske dumme det ned på mit niveau. Jeg opdatere tråden når han har kigget med.
--
He who runs today. Lives to run another day! - Red Dwarf
#12
|Smash|
Guru
06-08-2024 14:36

Rapporter til Admin
Der er noget her du kan bruge: https://techoverflow.net[...] Og kombiner det med "network at boot" i raspi-config. Det lader til at virke for andre. https://forums.raspberrypi.com[...]
--
FFHAU!
#13
anox
Ultrabruger
06-08-2024 15:54

Rapporter til Admin
Det kan løses let med bash. Herefter køre du en crontab hvert minut: * * * * * /bin/bash /path/to/script.sh. Scriptet forsøger at ping Google, er den på nettet, undersøger dem der er en tidligere pid fil. Er der ingen, åbner din browser. Ellers afbrydes scriptet fordi hvis der er en fil, indikere det at scriptet allerede køre :) #!/bin/bash #VARIABLES pid="/root/pid.script" #PROGRAM if [ ping -c 1 -W 1 -q google.com ]; then if [ ! -f $pid ]; then touch $pid chromium-browser --incognito --noerrdialogs –noerrors--disable-infobars --hide-crash-restore-bubble –start-fullscreen https://noget[...] else echo "Script køre / pid fil eksistere: $pid" fi else echo "Ingen Internetadgang" fi
--
Sidst redigeret 06-08-2024 15:56
#14
TLW
Junior Supporter
13-08-2024 11:08

Rapporter til Admin
Jeg tror at vi har fundet en løsning med at oprette en fil som kører sleep 30 før chromium startes. Jeg skal nok opdatere tråden når jeg har fået testet det. #9. Ved du hvordan jeg kan blive på Wayland og stadig få autostart til at køre? (Sender lige en PM i tilfælde af, at du ikke ser tråden :) )
--
He who runs today. Lives to run another day! - Red Dwarf
#15
TLW
Junior Supporter
02-09-2024 08:35

Rapporter til Admin
En sluttelig opdatering på tråden. Jeg fik det til at virke, dog stadig som X11 i stedet for Wayland. Det er helt sikkert ikke smukt, men det virker. Jeg har fremstillet denne lille hurtige vejledning hvis andre skulle sidde med samme prob. Bemærk at ”FindDinEgen” brugeren skal skrives ind med det brugnavn du selv vælger :) Download Raspberry Pi Imager på en Windows pc og start det. Vælg Raspberry Pi 5 – Raspberry Pi OS (64-bit) – ”SDkortet”.Og tryk på ”next”. (Jeg satte en bruger ind ”FindDinEgen” med pass "FindDitEgetPass" samtvalgte DK. Jeg skrev også "NavnPåWiFi" i wireless samt satte den til DK i Country, DK i ”Wireless LAN country). Når image er på sdkortet så sæt det i Pi’en og start den op.Følg vejledningen indtil desktop vises. (Husk at vælge et Wifi net eller sætte netstik i). Åbn terminalvinduet (Ctrl+Alt+T) og skriv: Sudo raspi-config og tryk enter. I den nye menu vælges der ”AdvancedOptions” -> Wayland. Sæt den derefter til X11 og tryk OK. Vælg dernæst ”System Options” ->”Hostname”. Skriv navnetind. F.eks. raspInforServer27. Vælg ”Localisation Options” ->”Locale”. Scrool ned til ”da_DK.UTF-8UTF-8” og tryk SPACE for at sætte en stjerne. Tryk så Enter og pil op til den røde markering er på ”da_DK.UTF-8” og tryk Enter. Tap ned på ”Finish” og tryk Enter. Svar Ja til at genstarte. Efter genstart åbn terminalvinduet igen og skriv: sudo apt-get purge firefox -y (fjerner Firefox). Sudo apt install unclutter -y && Sudo apt install chromium-browser-y && Sudo reboot og tryk enter. Start terminalvinduet igen efter genstart og skriv: Sudo apt update && Sudo apt full-upgrade -y &&Sudo reboot og tryk enter. Efter reboot, så åbn Chrome og tryk på de 3 prikker og vælg ”Indstillinger”-> ”Indstillinger” -> ”Ved opstart”. Sæt den til ”Åbn en bestemt side eller en rækker sider”. Luk så Chrome. Sæt så resten ved igen at åbne terminalvinduet og skriv: ”sudo nano /etc/xdg/lxsession/LXDE-pi/autostart”. (LXDE skal skrives med stort). Sæt dette ind: (Linjer med # behøves ikke skrives ind). # xset is a utility for setting user preferences for X (thewindow system) # disables the screen saver feature that blanks the screen: @xset s noblank # turns off the screen saver, ensuring the screen doesn'tget blanked after a period of inactivity: @xset s off # disables DPMS (Display Power Management Signaling),preventing the monitor from entering standby, # suspend, or off modes automatically: @xset -dpms # use unclutter to hide the cursor: @unclutter -idle 0 /home/FindDinEgen/bin/sleep.sh Tryk på CTRL+x og vælg J og enter for at gemme. ----------------------------------------------------------------------------------------------- Åbn stifinder og opret mappen bin her: /home/FindDinEgen Opret en fil ved navn sleep.sh Åbn filen ved at dobbelklikke og vælge åbn. Skriv dette ind i filen: #!/bin/bash sleep 40 chromium-browser --noerrdialogs --noerrors--hide-crash-restore-bubble --disable-infobars --start-fullscreen HTTPS://DINWEBSIDE[...] Gem filen og start terminalvinduet. Skriv chmod 775 /home/FindDinEgen/bin/sleep.sh og tryk enter. Når den starter op, vil den starte browseren efter 30sekunder og vise startskærmen til den hjemmeside du har skrevet ind. Dette gør, at den får netværk inden browser startes. Ellers bliver visningen ikke rigtig. ----------------------------------------------------------------------------------------------- For at opdatere og genstarte hver nat k.5, så åbnterminalvinduet og skriv: sudo nano /etc/crontab og tryk enter. Gå til nederste # og ryk det en linje ned og skriv lige overdet: * 5 * * * FindDinEgen sudo apt update && sudo aptfull-upgrade -y && sudo reboot Tryk CTRL+X, tryk J og enter. Skriv sudo reboot og tryk enter.
--
He who runs today. Lives to run another day! - Red Dwarf
#16
MadsAG
Semi Supporter
02-09-2024 15:14

Rapporter til Admin
#15 Jeg kan anbefale at du benytter dig af Electron en anden gang og benytter dig af pm2 til overvågning af processen.
--

Opret svar til indlægget: Raspberry Pi OS - Sleep command i autostart

Grundet øget spam aktivitet fra gæstebrugere, er det desværre ikke længere muligt, at oprette svar som gæst.

Hvis du ønsker at deltage i debatten, skal du oprette en brugerprofil.

Opret bruger | Login
NYHEDSBREV
Afstemning