# [SOLVED] Starten des X-Servers beim booten

## SinoTech

Ahoi ahoi,

also ich habe hier ein paar Rechner stehen die nach dem booten automatisch den X-Server starten sollen (besitzen keine Tastatur und sollen lediglich über den Touchscreen bedient werden). Die einzige Möglichkeit die ich bisher gefunden habe, war ein Eintrag in "/etc/conf.d/local.start" zu machen:

```

su abs -c startx 2>&1 >/home/abs/error.log &

```

Das funktioniert aber leider nur ohne gensplash. Boote ich den kernel mit splash, wird der X-Server komischerweise nicht mehr gestartet. Es gibt keine Fehlermeldung oder irgendwas, sondern es passiert einfach nichts (einloggen und  manuell starten funktioniert. Nur das automatische starten will nicht).

Also ... 1) woran könnte es liegen das der X-Server nicht gestartet wird, wenn man gensplash benutzt? 2) Welche Möglichkeiten gäbe es noch sowas zu realisieren (auf einen login-manager ala GDM/KDM würde ich gerne verzichten, weil auch der Plattenplatz auf den Rechnern stark begrenzt ist)?

Cheers,

Sino

----------

## Ampheus

Eine Möglichkeit, die mir einfallen würde wäre, sich das init-script in /etc/init.d/xdm anzusehen und daraus ein eigenes angepasstes für den X-Server zu erstellen. Habe aber gerade selber gesehen, dass so etwas wohl doch nicht so einfach wäre, aber der Ansatz init-script wäre mein Vorschlag.  :Smile: 

----------

## schachti

Ist vielleicht Qingy was für Dich? Ich glaube, im gentoo-Wiki gibt es sogar ein How-To...

----------

## SinoTech

Danke für die Antworten. Werde mir beides (Qingy und die Initscripte) mal ansehen.

Cheers,

Sino

----------

## Finswimmer

Was ist, wenn du das durch einen User ausführen lässt? Schreib es mal in die bash_profile.

Dann noch in die inittab:

id:3:initdefault:

#1:3:respawn:/sbin/mingetty --autologin $USER tty1

Tobi

P.S: Endlich geht das Forum wieder  :Smile: 

----------

## SinoTech

 *Finswimmer wrote:*   

> Was ist, wenn du das durch einen User ausführen lässt? Schreib es mal in die bash_profile.
> 
> Dann noch in die inittab:
> 
> id:3:initdefault:
> ...

 

Die Idee mit der inittab ist gut, und wenn man dort direkt ein Shellscript angibt das den X-Server startet, entfällt sogar der Eintrag in der .bash_profile.  (Habe mich jetzt für diese Lösung entschieden, dann brauch ich auch nicht noch was zusätzliches zu installieren  :Smile:  ).

 *Finswimmer wrote:*   

> 
> 
> [...]
> 
> P.S: Endlich geht das Forum wieder 

 

++

Cheers,

Sino

----------

## jkoerner

Moin,

es existiert hier irgendwo im Forum ein Thread. in dem ein kleines C-Programm das das automatische Einloggen auf einer gewünschten tty vornimmt.

Hier meine Version davon

```
1."Login Binary kompilieren"

#include <unistd.h>

#define USER "dein_username"

int main() { 

   execlp( "login", "login", "-f", USER, 0); 

}

das ganze als Datei abspeichern, z.B. "autologin_your_user.c"

kompilieren mit

"gcc -o autologin_your_user autologin_your_user.c"

und die Binärdatei nach /sbin kopieren. Die Rechte auf

<dein_username><users>755 setzen.

2. die "etc/inittab" editieren, dem Konfigabschnitt

'c1:12345:respawn:/sbin/agetty 38400 tty1 linux 

c2:12345:respawn:/sbin/agetty 38400 tty2 linux 

c3:12345:respawn:/sbin/agetty 38400 tty3 linux 

c4:12345:respawn:/sbin/agetty 38400 tty4 linux 

c5:12345:respawn:/sbin/agetty 38400 tty5 linux 

c6:12345:respawn:/sbin/agetty 38400 tty6 linux'

folgende Zeile darunter hinzufügen (c7 und tty7 bezeichnen die virtuelle Konsole,

du kannst auch andere Konsolen nutzen >7)

c7:12345:respawn:/sbin/agetty -n -l /sbin/autologin_your_user 38400 tty7 linux

3. Jetzt noch die ".bash_profile" im "/home" - Verzeichnis,

des in die Loginbinary eingetragenen Benutzers, editieren

(verhindert, daß beim Öffnen einer Konsole unter X eine weitere Session gestart wird).

hinzufügen:

if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty7 ]; then 

startx 

fi

```

Zu verwenden in unsensibler Umgebung   :Wink: 

Meine Sicherheit ist ein geändertes Tastenlayout und eine unbeschriftete Tastatur...

----------

