Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Prüfen ob der Desktop korrekt gestartet ist

Alles rund um die möglichen Desktopumgebungen wie KDE, Gnome, XFCE usw. die es unter Linux gibt

Moderator: Moderatoren

Antworten
tiny
Newbie
Newbie
Beiträge: 16
Registriert: 3. Sep 2020, 10:43

Prüfen ob der Desktop korrekt gestartet ist

Beitrag von tiny »

Hallo,

normal nutze ich RTCWake um meinen Rechner an Arbeitstagen automatisch zu einer bestimmten Zeit hochzufahren. Manchmal passiert es, dass ich das schlicht vergesse oder den Rechner Abends nochmal starte und den Timer durch den Start lösche - hab bisher nicht herausgefunden wie man das Löschen unterbinden kann. Ich hab aber auch einen Pi 24/7 laufen und wollte mir dort ein Script parken womit ich per Etherwake den PC früh hochfahre (Etherwake ist eingerichtet und geht) und wenn der Desktop läuft die nötigsten Programme startet.

Dafür muss der Pi aber warten bis der Desktop korrekt gestartet ist. Kann ich das über Abfragen per SSH vom Pi auf den PC irgendwie prüfen? Die automatische SSH-Verbindung per Schlüsselpaar ist nicht das Thema, ich hab nur keinen Schimmer wonach man schauen muss damit der Desktop läuft?

tiny

P.S. Als Biliglösung hätte ich noch im Kopf, dass das Script auf dem Pi erst etherwake ausführt und einfach mit 'touch' eine leere Datei in Home-Verzeichnis vom Pi schreibt. Am PC könnte man dann ein Autostart-Script ausführen, dass prüft ob diese Datei da ist und wenn ja: Datei löschen und die Programme starten. Wenn man das nicht per Systemd sondern über eine *.desktop in ~/.local/autostart macht dürfte es keine Probleme wegen Desktop geben. Souverän wird die Lösung aber nicht.
Benutzeravatar
manzek
Hacker
Hacker
Beiträge: 354
Registriert: 20. Mär 2005, 14:21
Wohnort: Metropolregion Bremen/Oldenburg

Re: Prüfen ob der Desktop korrekt gestartet ist

Beitrag von manzek »

Vielleicht lassen sich mit Überwachen der PIDs ebenfalls solche Abfragen starten.
Ungefähr nach dieser Art:

Code: Alles auswählen

ps -A | grep -i KDE
So long, Stephan

---
Gigabyte AORUS MASTER X570 * AMD Ryzen 3900XT @ 4,0 GHz * 128 GB DDR4 @ 3200 MHz * nVIDIA GeForce RTX 2070 SUPER, 8192 MB * 23,6" - LED @ 1920x1080 * openSUSE Leap 15.2 * KDE 5.18.x
abgdf
Guru
Guru
Beiträge: 3376
Registriert: 13. Apr 2004, 21:15

Re: Prüfen ob der Desktop korrekt gestartet ist

Beitrag von abgdf »

Man könnte auch prüfen, ob Runlevel 5 gegeben ist.

https://ostechnix.com/check-runlevel-linux/

Code: Alles auswählen

who -r
scheint mir am kürzesten zu sein. Ob das über ssh geht, weiß ich aber nicht.
Benutzeravatar
manzek
Hacker
Hacker
Beiträge: 354
Registriert: 20. Mär 2005, 14:21
Wohnort: Metropolregion Bremen/Oldenburg

Re: Prüfen ob der Desktop korrekt gestartet ist

Beitrag von manzek »

abgdf hat geschrieben: 16. Jan 2021, 18:19 Ob das über ssh geht, weiß ich aber nicht.
Auf dem Raspberry Pi geht das auf jeden Fall via SSH. :p

Code: Alles auswählen

pi@DNS-PI3:~ $ who -r
         Runlevel 5   2021-01-16 05:30
So long, Stephan

---
Gigabyte AORUS MASTER X570 * AMD Ryzen 3900XT @ 4,0 GHz * 128 GB DDR4 @ 3200 MHz * nVIDIA GeForce RTX 2070 SUPER, 8192 MB * 23,6" - LED @ 1920x1080 * openSUSE Leap 15.2 * KDE 5.18.x
tiny
Newbie
Newbie
Beiträge: 16
Registriert: 3. Sep 2020, 10:43

Re: Prüfen ob der Desktop korrekt gestartet ist

Beitrag von tiny »

Das werde ich mal versuchen.
tiny
Newbie
Newbie
Beiträge: 16
Registriert: 3. Sep 2020, 10:43

Re: Prüfen ob der Desktop korrekt gestartet ist

Beitrag von tiny »

Das geht so, nur scheitere ich gerade an etwas ganz profanen.

Ich habe hier auf dem Pi schon Scripte die sich automatisch per SSH einloggen und etwas ausführen, z. B.

Code: Alles auswählen

ssh -i /home/pi/.desktop tiny@192.168.10.21 -t <command>
Bisher aber immer nur nicht-grafische Sachen. Damit hier eine grafische Anwendung startet muss ich

Code: Alles auswählen

export DISPLAY=:0
davor setzen. Das geht, wenn ich mich manuell vom Pi aus auf dem Desktop per SSH einloggen und export DISPLAY=:0 und danach z. B. 'firefox' ausführe. Das ganze aber in einen Aufruf zu packen geht nicht.

Code: Alles auswählen

ssh -i /home/pi/.desktop tiny@192.168.10.21 -t export DISPLAY=:0 ; firefox
Ich bin mir nicht einmal sicher ob hier schon 'export' und 'DISPLAY=:0' als getrennte Kommandos interpretiert werden. Vermutlich wird 'firefox' nicht als zweites Kommando zu 'export DISPLAY=:0' sondern zum ganzen SSH-Kommando gerechnet. Alles nach -t in einfache oder doppelte Anführungszeichen zu setzen ändert aber auch nichts.
Sauerland
Guru
Guru
Beiträge: 3955
Registriert: 5. Aug 2007, 17:57
Wohnort: Sauerland

Re: Prüfen ob der Desktop korrekt gestartet ist

Beitrag von Sauerland »

Was ist denn mit:

Code: Alles auswählen

ssh -X ........
Desktop: OpenSUSE Leap 15.2, Nvidia-Grafik Kernel 5.x
Laptop: OpenSUSE Leap 15.2, Intel-Skylake, Kernel 5.3
tiny
Newbie
Newbie
Beiträge: 16
Registriert: 3. Sep 2020, 10:43

Re: Prüfen ob der Desktop korrekt gestartet ist

Beitrag von tiny »

Hab es erst einmal mit 'here document' gemacht und geht ganz gut. Vielleicht teste ich ssh -X nochmal.
Antworten