Hi, ich habe ein Linuxboard mit einem Debian drauf. (Beagleboard bzw. Raspberry) Hierfür habe ich ein Programm geschrieben. Soweit so gut. Ich brauche jedoch weder Bildschirm noch Eingabeelemente wie Maus und Tastertur, aus diesem Grud würde ich gerne mein Programm sofort nach dem Booten starten. Leider muss man sich aber immer erst anmelden.+ Habt ihr eine Idee, wie man das umgehen kann? Gruß
Gast
#3331370
let me google that for you "init.d beaglebone"
Gast
#3331382
Erster Suchtreffer: http://www.linux-fuer-alle.de/doc_show.php?docid=128&catid=8 Du solltest Dich näher mit runlevel und Un*x beschäftigen ...
Danke für die Antwort, aber ich kann darin nicht die Antwort auf meine Frage finden. ich möchte das Anmelden eines Benutzers bei Linux (debian) umgehen und direkt nach dem Booten ein Programm (Kein Service oder Script o.Ä.) starten. Wie geht das?
Gast
#3331399
Gast
#3331405
Sonke A. schrieb: > ich möchte das Anmelden eines Benutzers bei Linux (debian) umgehen und > direkt nach dem Booten ein Programm (Kein Service oder Script o.Ä.) > starten. Wie geht das? Falls das in Frage stehende Programm sozusagen "nackt" auf dem Kernel laufen kann, einfach beim Booten "init=/pfad/zum/programm" als (letzten) Bootparameter mitgeben. Dann werden alle Linux-Dienste umgangen und sofort das Progamm ausgeführt. Achtung: Das bringt viele Nachteile mit sich, z.B. fehlt jede Benutzersteuerung, es werden keine Daemonen geladen, die Netzwerkverbindungen werden nicht initialisiert etc. Hilft das weiter? pv
Gast
#3331409
# Autologin: root oder user # als root im single-user mode (Kernelparameter s), Eintrag in /etc/inittab: ~~:S:once:/bin/login -f root # als user, Eintrag in /etc/inittab: 1:2345:respawn:/bin/login -f username tty1 </dev/tty1 >/dev/tty1 2>&1
Peter.N schrieb: > # Autologin: root oder user > # als root im single-user mode (Kernelparameter s), Eintrag in > /etc/inittab: > ~~:S:once:/bin/login -f root > # als user, Eintrag in /etc/inittab: > 1:2345:respawn:/bin/login -f username tty1 </dev/tty1 >/dev/tty1 2>&1 Danke sowas hab ich gesucht. Leider gibt es auf meinem System keine inittab. kann die beu Ubunttu / debian anders heißen?
Gast
#3331425
Was spricht gegen die /etc/rc.local? Wenn es als ein bestimmter User gestartet werden soll, sudo oder su mit entsprechenden Parametern davor...
Gast
#3331427
Sonke A. schrieb: > Danke sowas hab ich gesucht. Leider gibt es auf meinem System keine > inittab. kann die beu Ubunttu / debian anders heißen? Das halte ich für ein Gerücht: http://www.debiananwenderhandbuch.de/startstop.html http://manpages.ubuntu.com/manpages/precise/de/man5/inittab.5.html Tue Dir den gefallen und lerne erstmal Grundlagen zu Un*x, jetzt hast Du zwei links die Du durcharbeiten kannst.
CC schrieb: > Was spricht gegen die /etc/rc.local? > Wenn es als ein bestimmter User gestartet werden soll, sudo oder su mit > entsprechenden Parametern davor... in der datei stehen nur Kommentare und ein exit 0 wie starte ich hier ein Programm? mit sudo /pfad/zumProg/Programm wird er nach dem SUDO Passwort fragen oder? das Programm muss jedoch nicht zwangsläufig als superuser laufen. Nackt auf dem kernel halte ich aber auch für zu eingeschränkt, da es auf eine SD Karte zugreift und die ist dann ggf. noch nicht gemountet. Gleiches mit den seriellen Schnittstellen und den USB Devices.
Dann starte es doch als Service.. Geht mit debian und make-style init gut.
Gast
#3331464
Sonke A. schrieb: > wie starte ich hier ein Programm? > > mit sudo /pfad/zumProg/Programm wird er nach dem SUDO Passwort fragen > oder? Die init.d Skripte werden als root ausgeführt, wenn root sudo macht fragt da keiner nach einem Passwort. Aber su ist da eh praktischer, der befehl würde dann lauten: su -l -c /pfad/zumProg/Programm username
Wenn das Programm dann die Kontrolle an init zurückgeben soll, kannst du dein programmm auch mit 'programmname &' dämonisieren, das heisst, es läuft im Hintergrund weiter und init läuft weiter bis zum login prompt. Empfehlenwert ist es dann natürlich, etwaige Konsolenausgaben deines programms nicht einfach auf die erste beste Konsole auszugeben, sondern z.B. auf >/dev/tty2 oder so. Also z.B. 'programmname & >/dev/tty3'
Gast
#3331560
Sonke A. schrieb: > > Danke sowas hab ich gesucht. Leider gibt es auf meinem System keine > inittab. kann die beu Ubunttu / debian anders heißen? Mmm ... kann es sein, das du schon ein "neues" System am laufen hast. Die neueren Linuxe benuzen systemd Schau mal ob auf dem System "systemctl" und "journalctl" vorhanden ist.
1 | |
2 | |
sollten jeweils eine Ausgabe liefern.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.