Raspberry Pi Autostart von LXDE funktioniert nicht


16

Ich habe eine Himbeer-Pi-Installation mit einem Pi 2 aktualisiert. Da ich jedoch alle Pakete aktualisiert habe, funktioniert der Autostart nicht mehr:

auch das scheint nicht zu funktionieren:

sudo nano /etc/xdg/lxsession/LXDE/autostart

noch das:

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart

Der Inhalt der Autostart-Datei ist:

@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
#@xscreensaver -no-splash
# Auto run the browser
@xset s off
@xset -dpms
@xset s noblank
@/usr/bin/epiphany-browser -a --profile ~/.config http://google.de
@sleep 5s # give it time to start
@echo key F11 | xte # simulate pressing the full screen key

Wie kann ich konfigurieren, dass das autostartausgeführt wird?


Dumme Frage / Plausibilitätsprüfung: Haben Sie bestätigt, dass die Autostart-Datei nicht ausgeführt wird, indem Sie Ihre Befehle durch etwas wirklich Grundlegendes ersetzen ? Entfernen Sie zum Beispiel alles unter "#Auto run the browser" und testen Sie "@midori".
Goobering

Ja, das habe ich gemacht. Es wird einfach nicht ausgeführt.
S.Spieker

Antworten:


14

In diesem Thread in den Foren von raspberrypi.org gibt es eine plausibel klingende Erklärung für Ihr Problem .

/etc/xdg/lxsession/LXDE-pi/autostart

Dies ist die globale Autostart-Datei und funktioniert für alle Benutzer, es sei denn, sie haben einen Benutzer-Autostart. Wenn der Benutzer eine Autostart-Datei hat, wird die globale ignoriert und der persönliche Autostart verwendet. Benutzereinstellungen werden zuletzt angewendet und haben Vorrang vor globalen Einstellungen. Jessie erstellt während der Installation die Autostart-Datei eines Benutzers, sodass das Ändern der Einstellungen in der globalen Datei keine Auswirkungen mehr hat.

/etc/xdg/lxsession/LXDE/autostart

Das ist der "alte" Ort, der neue Ort verwendet "/ LXDE-pi /". Das Verzeichnis "/ LXDE /" ist möglicherweise vorhanden, wird jedoch ignoriert.

Der richtige Ort für das Hinzufügen von Autostart-Elementen sollte sein ~/.config/lxsession/LXDE-pi/autostart. Es wird empfohlen , dass Sie nicht tun sudo verwenden , um bearbeitet es.


Vielen Dank für den Hinweis, aber ich habe den Besitzer in pi: pi geändert, aber das funktioniert auch nicht.
Pieker

1
Entschuldigung, können Sie bestätigen, was Sie geändert haben? Das sollte hier nicht nötig sein.
Goobering

-rw-r--r-- 1 pi pi 414 Mar 18 06:55 /etc/xdg/lxsession/LXDE-pi/autostart
S.Spieker

Das hilft hier nicht weiter - die Einstellungen auf Benutzerebene haben weiterhin Vorrang vor diesen Einstellungen. Sie müssen Ihre Befehle kopieren und in ~ / .config / lxsession / LXDE-pi / autostart einfügen.
Goobering

1
Ich fürchte, das bringt mich ziemlich aus den Vorschlägen heraus. Es gibt hier eine exemplarische Vorgehensweise , die möglicherweise etwas enthält, das ich verpasst habe, aber soweit ich das beurteilen kann, wird so mit Autostart-Konfigurationen umgegangen.
Goobering

10

Erlebte das gleiche Problem. Hier sind meine Ergebnisse:

Überprüfen Sie, ob die /home/pi/.config/lxsession/LXDE-pi/autostartDatei vorhanden ist. Wenn es existiert, wird es anstelle von verwendet /etc/xdg/lxsession/LXDE-pi/autostart.

Anzeigen von Protokollen (nach dem Neustart) in /home/pi/.xsession-errors:

$ cat .xsession-errors
Xsession: X session started for pi at Sat 30 Jul 23:14:04 UTC 2016
localuser:pi being added to access control list
** Message: main.vala:99: Session is LXDE-pi
** Message: main.vala:100: DE is LXDE
** Message: main.vala:131: log directory: /home/pi/.cache/lxsession/LXDE-pi
** Message: main.vala:132: log path: /home/pi/.cache/lxsession/LXDE-pi/run.log

Dies deutet auf Folgendes hin /home/pi/.cache/lxsession/LXDE-pi/run.log:

$ tail -n30 /home/pi/.cache/lxsession/LXDE-pi/run.log
...

** (epiphany-browser:874): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
--profile must be an existing directory when --application-mode is requested
** Message: app.vala:130: /usr/bin/epiphany-browser exit with this type of exit: 256

...

Also habe ich den Befehl manuell im Terminal (in der GUI) getestet. Ich habe einige Fehler bekommen:

$ /usr/bin/epiphany-browser -a --profile ~/.config https~://google.de

** (epiphany-browser:1218): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
** Message: Remote error from secret service: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.secrets was not provided by any .service files

** (epiphany-browser:1218): WARNING **: Error caching form data: The name org.freedesktop.secrets was not provided by any .service files

Aber der Browser startete trotzdem ...

Spielte mit dem /usr/bin/epiphany-browserBefehl und reduzierte ihn auf /usr/bin/epiphany-browser --profile ~/.config https://google.de.

Dann änderten sich die /home/pi/.config/lxsession/LXDE-pi/autostartZeilen zu:

@/usr/bin/epiphany-browser --profile ~/.config https://google.de

Und es hat funktioniert - der Browser wurde gestartet.

Getestet am:

  • Himbeer-Pi 3
  • Debian Jessie

    $ lsb_release -a
    No LSB modules are available.
    Distributor ID: Raspbian
    Description:    Raspbian GNU/Linux 8.0 (jessie)
    Release:    8.0
    Codename:   jessie
    

"Überprüfen Sie, ob die Datei /home/pi/.config/lxsession/LXDE-pi/autostart vorhanden ist. Wenn sie vorhanden ist, wird sie verwendet" - das hat meinen Tag gerettet!
Mykhailo Seniutovych

2

Gestern habe ich NOOBS heruntergeladen und einen neuen Micro-SD-Installer erstellt. Nach der Installation von Raspian sah alles zunächst in Ordnung aus, bis ich auf Autostart schaute. Ich habe festgestellt, dass der Ordner /home/pi/.config/lxsession nicht vorhanden ist, also habe ich ihn erstellt und den Ordner /home/pi/.config/lxsession/LXDE-pi. Ich habe dann die Datei Autostart als leere Datei erstellt und meinen Autostart-Befehl hinzugefügt. Nach dem Neustart hatte ich einen schwarzen Bildschirm. Ich habe andere funktionierende Pis und ich habe ihre Autostart-Dateien überprüft. Sie haben diese Zeilen

@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
@point-rpi

Das Hinzufügen dieser Zeilen in der neuen Installation behebt das Problem.

Ich füge diese Antwort hinzu, um jemand anderem wie mir zu helfen, der nach einer Lösung für das gleiche Problem sucht.


1

Ich konnte das Problem mit einer Cron-Aufgabe lösen.

Zuerst habe ich die Pakete installiert:

sudo apt-get install gnome-schedule

Die Crontab habe ich bearbeitet über:

crontab -e

Ich habe nach jedem Neustart eine Aufgabe hinzugefügt, in der ich den Browser startete:

@reboot /home/pi/startupscript &

0

schreibe auf diesen Pfad den Autostart - /home/pi/.config/lxsession/LXDE-pi/

@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
@/usr/bin/chromium-browser --start-fullscreen --incognito "USE URL¨S HERE, IF YOU WANT TO USE MORE THAN ONE USE A SPACE FOR EACH URL"
@/usr/bin/xdotool x y

Sie können auch den --start-fullscreenfür Kiosk ändern , aber Kiosk muss den Prozess Ihrer App beenden.

Befehl: pkill chromium


0

Ich bin auf folgenden Fehler gestoßen:

[1216:1216:0128/120813.940515:ERROR:browser_main_loop.cc(582)] Failed to put Xlib into threaded mode.

(chromium-browser:1216): Gtk-WARNING **: cannot open display:

Ich habe es mit diesem Tutorial geschafft , es zu überwinden .

I Window-Manager installiert

$ sudo apt-get install matchbox-window-manager

Dann habe ich dies in .config/lxsession/LXDE-pi/autostartBEVOR ich Chromium startete aufgenommen.

@matchbox-window-Manager -use_cursor no&

Dann ein Befehl zum Starten des Chrom-Browsers mit meinen Optionen.


0

Drei Dinge, die mich auslösten:

  • Der Autostart des Benutzers überschreibt den globalen. Wenn Sie alles wie gewohnt und Ihre benutzerdefinierten Befehle starten möchten , kopieren Sie den Standard und fügen Sie Ihre Befehle am Ende hinzu:

    cp / etc / xdg / lxsession / LXDE-pi / autostart $ HOME / .config / lxsession / LXDE-pi / editor

  • in $HOME/.config/lxsession/LXDE-pi/desktop.conf, da ist dieser Teil - wenn disable_autostart=yeser nicht läuft (im Nachhinein klar, ja):

    [Sitzung] disable_autostart = no

  • Autostart ist kein Shell-Skript. Wenn Sie etwas brauchen, das über das Starten von Programmen hinausgeht, erstellen Sie besser ein Shell-Skript und rufen Sie es über den Autostart auf (z. B. foo && barfunktioniert hier nicht).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.