Datei per Autostart starten

  • Hi Freunde,

    ich habe eine Datei, die ich gerne per Autostart laufen lassen möchte. Es soll später so sein, dass das Programm/die Datei sofort beim Starten des Pis ausgeführt wird, sodass der Endbenutzer gar keinen Zugriff auf weitere Funktionen des Pis hat.

    Dafür habe ich ein Java-Programm geschrieben(sorry aber hier schreibt ein Python-Noob :rolleyes:), das den kompletten Bildschirm ausfüllt.

    Dafür wäre es auch zusätzlich noch sehr schön, wenn die Taskleiste verschwinden würde.

    Das Programm habe ich sonst über die Kommandozeile gestartet:

    cd Desktop

    java -jar Dido.jar


    Kann mir da jemand weiterhelfen?


    Danke

  • Such mal nach "Linux Autostart".

    Die Taskleiste kannst du über die Desktopeinstellungen in der Höhe minimieren oder du nimmst ein OS ohne Desktop.

  • Die Taskleiste wird hier über die Autostartdatei /home/pi/.config/lxsession/LXDE-pi/autostart gestartet. Wo die Autostart Datei bei dir liegt, weiss ich nicht.


    Ich denke aber, das ein Zugriff auf andere Funktionen durch den Benutzer nicht verhindert werden. Auf ein Terminal sollte man so immer kommen können. Je nach Voraussetzung muss man wohl einen anderen Ansatz wählen.

  • sodass der Endbenutzer gar keinen Zugriff auf weitere Funktionen des Pis hat.

    Das kannst Du in einem Mehrbenutzer-Betriebsystem nicht leicht verhindern, solange sich ein User remote, ober über eine (andere) Konsole (z.B. CTRL-ALT-F4) einloggen kann.


    Wenn ein User nur ein einziges Grafikprogramm ausführen soll, musst Du nicht die ganze Grafikumgebung (Display Manager) laden. Da reicht ein "xinit" mit dem Programmnamen, das nur den X-Server mit dem einem Programm ausführt. Der Bootprozess darf dann nicht bis ins Grafiksystem automatisch laden, sondern nur bis zur Textkonsole (Text-Login).


    < man xinit >


    Servus !

    RTFM = Read The Factory Manual, oder so

  • oder du nimmst ein OS ohne Desktop.

    Kann ich denn ein Java-Programm mit GUI auf einem OS ohne Desktop laufen lassen? Und wenn ja, wie bekomme ich das gestartet?


    Die Taskleiste wird hier über die Autostartdatei /home/pi/.config/lxsession/LXDE-pi/autostart gestartet.

    Kann man die Taskleiste denn aus dem Autostart rausnehmen?



    Ich denke aber, das ein Zugriff auf andere Funktionen durch den Benutzer nicht verhindert werden. Auf ein Terminal sollte man so immer kommen können. Je nach Voraussetzung muss man wohl einen anderen Ansatz wählen.

    Der Nutzer hat nur ein LC-Display zur Bedienung. Deswegen wollte ich das Programm gerne im Vollbild bzw. Kiosk-Modus laufen lassen.



    Wenn ein User nur ein einziges Grafikprogramm ausführen soll, musst Du nicht die ganze Grafikumgebung (Display Manager) laden. Da reicht ein "xinit" mit dem Programmnamen, das nur den X-Server mit dem einem Programm ausführt. Der Bootprozess darf dann nicht bis ins Grafiksystem automatisch laden, sondern nur bis zur Textkonsole (Text-Login).

    Wie funktioniert sowas? Ich kenne leider nur das Betriebssystem mit Desktop und kenne mich mit der anderen Version nicht aus...





    Vielen Dank euch.

  • Wie funktioniert sowas? Ich kenne leider nur das Betriebssystem mit Desktop und kenne mich mit der anderen Version nicht aus...

    Du kannst das Booten bis in den Desktop abschalten, indem Du in raspt-config - Boot Option nur bis zur Command Line wählst.

    https://www.raspberrypi.org/documentation/configuration/ -- raspi-config


    Nach dem Login kannst Du mit "xinit Programm -- Server" nach Massgabe von < man xinit > ein Programm starten, oder mit startx Deinen gewohnten Display Manager aufrufen.


    Servus !

    RTFM = Read The Factory Manual, oder so

  • Kann man die Taskleiste denn aus dem Autostart rausnehmen?

    Ja, kann man (löschen oder auskommentieren). Ist aber vermutlich nicht zweckmässig in deinem Fall.

    Der Nutzer hat nur ein LC-Display zur Bedienung. Deswegen wollte ich das Programm gerne im Vollbild bzw. Kiosk-Modus laufen lassen.

    Das heisst genau was? Der Nutzer sieht nur den Bildschirm (Touchscreen?) und hat kein Zugriff auf den RPi selbst und angeschlossenen Geräte (mit Ausnahme des Displays)? Bei einem reinen nur-lese Bildschirm muss man ja keine Massnahmen treffen bezüglich Nutzer Zugriff.

  • Das heisst genau was? Der Nutzer sieht nur den Bildschirm (Touchscreen?) und hat kein Zugriff auf den RPi selbst und angeschlossenen Geräte (mit Ausnahme des Displays)? Bei einem reinen nur-lese Bildschirm muss man ja keine Massnahmen treffen bezüglich Nutzer Zugriff.

    Ja also der Nutzer kann nur einen 7"-Touchscreen mit dem Finger bedienen. Wenn das Programm dann im Vollbild läuft, kann ja eigentlich nichts passieren.

    Du kannst das Booten bis in den Desktop abschalten, indem Du in raspt-config - Boot Option nur bis zur Command Line wählst.

    https://www.raspberrypi.org/documentation/configuration/ -- raspi-config


    Nach dem Login kannst Du mit "xinit Programm -- Server" nach Massgabe von < man xinit > ein Programm starten, oder mit startx Deinen gewohnten Display Manager aufrufen.

    Danke, ich werde mal etwas rumprobieren. :)