Linux keine Anmeldung und Programm sofort starten

OP #3331360
Lesenswert?

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 #3331405
Lesenswert?

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
Lesenswert?

# 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
OP #3331418
Lesenswert?

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 #3331427
Lesenswert?

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.
OP #3331441
Lesenswert?

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.
Gast #3331464
Lesenswert?

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
(Firma: matzetronics) #3331508
Lesenswert?

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
Lesenswert?

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
which systemctl
2
which journalctl
sollten jeweils eine Ausgabe liefern.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren