L'avvio automatico di Raspberry pi di LXDE non funziona


16

Ho aggiornato un'installazione di Raspberry Pi con un Pi 2. Ma da quando ho aggiornato tutti i pacchetti, l'avvio automatico non funziona più:

né questo sembra funzionare:

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

né questo:

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

il contenuto del file di avvio automatico è:

@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

Come posso configurare l' autostartesecuzione di?


Domanda stupida / controllo di integrità: hai confermato che il file di avvio automatico non viene eseguito sostituendo i tuoi comandi con qualcosa di veramente semplice? Ad esempio, rimuovi tutto sotto "#Auto esegui il browser" e prova "@midori".
goobering

Sì, l'ho fatto. Semplicemente non viene rispettato.
S.Spieker

Risposte:


14

C'è una spiegazione abbastanza plausibile per il tuo problema in questa discussione sui forum di raspberrypi.org.

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

Questo è il file di avvio automatico globale e funziona per tutti gli utenti ... a meno che non abbiano un avvio automatico dell'utente. Se l'utente ha un file di avvio automatico, quello globale viene ignorato e viene utilizzato l'avvio automatico personale. Le impostazioni dell'utente vengono applicate per ultime e hanno la precedenza sulle impostazioni globali. Jessie crea il file di avvio automatico di un utente durante l'installazione, quindi la modifica delle impostazioni nel file globale non ha più alcun effetto.

/etc/xdg/lxsession/LXDE/autostart

Questa è la posizione "vecchia", la nuova posizione utilizza "/ LXDE-pi /". La directory "/ LXDE /" potrebbe esistere, ma verrà ignorata.

La posizione corretta per l'aggiunta di elementi di avvio automatico dovrebbe essere ~/.config/lxsession/LXDE-pi/autostart. Si consiglia di non utilizzare sudo per modificarlo.


Grazie per averlo sottolineato, ma ho cambiato la proprietà in pi: pi, ma non funziona neanche.
S.Spieker

1
Spiacenti, potresti confermare di cosa hai cambiato la proprietà? Non dovrebbe essere necessario qui.
goobering

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

Questo non aiuta qui: le impostazioni a livello di utente avranno comunque la precedenza su tali impostazioni. Devi copiare / incollare i tuoi comandi su ~ / .config / lxsession / LXDE-pi / avvio automatico.
goobering

1
Temo che mi faccia venire fuori dai suggerimenti. C'è una procedura dettagliata qui che può includere qualcosa che ho perso, ma per quanto posso dire questo è come le configurazioni di avvio automatico vengono gestiti.
goobering

10

Sperimentato lo stesso problema. Ecco i miei risultati:

Controlla se il /home/pi/.config/lxsession/LXDE-pi/autostartfile esiste. Se esiste, verrà utilizzato al posto di /etc/xdg/lxsession/LXDE-pi/autostart.

Visualizza i log (dopo il riavvio) 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

Questo suggerisce di guardare /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

...

Quindi ho testato manualmente il comando nel terminale (nella GUI). Ho ricevuto alcuni errori:

$ /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

Ma il browser è iniziato comunque ...

Giocato con il /usr/bin/epiphany-browsercomando e ridotto a /usr/bin/epiphany-browser --profile ~/.config https://google.de.

Quindi ha cambiato le /home/pi/.config/lxsession/LXDE-pi/autostartlinee in:

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

E ha funzionato: il browser è stato avviato.

Testato su:

  • Raspberry 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
    

"Controlla se esiste il file /home/pi/.config/lxsession/LXDE-pi/autostart. Se esiste, verrà utilizzato" - che mi ha salvato la giornata!
Mykhailo Seniutovych,

2

Ieri ho scaricato NOOBS e creato un nuovo programma di installazione per micro SD. Dopo l'installazione di Raspian, all'inizio tutto sembrava a posto finché non ho visto l'avvio automatico. Ho scoperto che la cartella /home/pi/.config/lxsession non esisteva, quindi l'ho creata e la cartella /home/pi/.config/lxsession/LXDE-pi. Ho quindi creato l'avvio automatico del file come file vuoto e ho aggiunto il mio comando di avvio automatico. Dopo il riavvio ho avuto una schermata nera. Ho altri Pis funzionanti e ho controllato i loro file di avvio automatico. Hanno queste linee

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

L'aggiunta di queste righe nella nuova installazione ha risolto il problema.

Sto aggiungendo questa risposta a beneficio di qualcun altro come me che sta cercando una soluzione allo stesso problema.


1

Sono stato in grado di risolvere il problema con un'attività cron.

Per prima cosa ho installato i pacchetti:

sudo apt-get install gnome-schedule

Ho modificato il crontab tramite:

crontab -e

Ho aggiunto un'attività dopo ogni riavvio in cui ho messo l'avvio del browser:

@reboot /home/pi/startupscript &

0

scrivere su questi percorsi l'avvio automatico - /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

Inoltre puoi cambiare il --start-fullscreenchiosco for, ma il chiosco deve interrompere il processo della tua app.

Comando: pkill chromium


0

Ho riscontrato questo errore:

[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:

Sono riuscito a superarlo usando questo tutorial .

Ho installato il gestore delle finestre

$ sudo apt-get install matchbox-window-manager

Quindi l'ho incluso in .config/lxsession/LXDE-pi/autostartPRIMA di avviare Chromium.

@matchbox-window-Manager -use_cursor no&

Quindi un comando per avviare il browser Chrome con le mie opzioni.


0

Tre cose che mi hanno inciampato:

  • autostart dell'utente sostituisce quella globale; se vuoi avviare tutto come al solito più i tuoi comandi personalizzati, copia il valore predefinito e aggiungi i tuoi comandi alla fine:

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

  • in $HOME/.config/lxsession/LXDE-pi/desktop.conf, c'è questa parte - se disable_autostart=yes, non funzionerà (ovvio in retrospettiva, sì):

    [Sessione] disable_autostart = no

  • l'avvio automatico non è uno script di shell. Se avete bisogno di qualcosa oltre la semplice l'avvio di programmi, meglio fare uno script di shell e chiamata che da l'avvio automatico (ad esempio foo && barnon funziona qui)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.