Linux: KDM, startx und die X-Sitzung

2049
watain

Ich verwende startx in meiner .bashrcDatei, um X zu starten, wenn ich mich bei tty1 anmelde, anstatt einen Display-Manager wie KDM (ich verwende KDE 4.3.4). Der tatsächliche Code in meinem .bashrc:

if [ -z "$DISPLAY" ] && [ "`tty`" = /dev/tty1 ] then startx logout fi 

Jetzt ist das Problem, da KDM nicht ausgeführt wird. Ich kann die Schaltfläche zum Herunterfahren aus dem KDE-Menü nicht verwenden (da dazu Root-Berechtigungen erforderlich sind) und einige andere Funktionen sind ebenfalls weg.

Gibt es eine Möglichkeit, KDM zu starten, wenn ich startxin meinem laufe .bashrc, wie KDM einfach im Hintergrund auszuführen ? Der Punkt ist, dass ich kein Login - Display will, so bin ich sicher, dass es einen Weg geben muss nur KDM starten still .

1

3 Antworten auf die Frage

1
Ignacio Vazquez-Abrams

Putting startx in .bashrc is a bad idea. It will prevent you from being able to log in normally to a console. Unless you have a really, really good reason to do so (and I suspect that you, like pretty much everyone else, do not), use a display manager instead.

Genau. Oder machen Sie die sieben zusätzlichen Tastatureingaben und führen Sie startx wie gewohnt aus, nachdem Sie sich angemeldet haben. Justin Smith vor 14 Jahren 0
0
Capi Etheriel

Sie können für kdm die automatische Anmeldung festlegen, sodass kein Anmeldeformular angezeigt wird. Würde es helfen? Wenn dies hilft, müssen Sie systemsettings als root ausführen (alt + f2 => kdesu systemsettings). Wählen Sie dann im Anmelde-Manager unter "Erweitert" die Option "Automatische Anmeldung aktivieren" in der Registerkarte "Komfort".

Das Problem ist, dass ich immer noch meine Login-Eingabeaufforderung bei tty1 haben möchte. Wenn ich KDM mit einem automatischen Login starte, werde ich überhaupt nicht zur Eingabe eines Passworts aufgefordert (soweit ich weiß?). Ich möchte mich über tty1 einloggen und dann X starten und KDM im Hintergrund ausführen. watain vor 14 Jahren 0
Kannst du 'sudo' auf .bashrc ausführen? Es sollte Ihnen bei der Berechtigungsfrage helfen. Auto-Login würde alles andere tun, wenn Sie den KDM-Dienst starten (normalerweise in /etc/init.d/kdm). Capi Etheriel vor 14 Jahren 0
0
Benjamin Bannier

It is not really clear what you want to achieve, but like Ignacio wrote putting startx into your .bashrc is a really bad idea. If your problem were only that you cannot call shutdown -h from within that session, CTRLALTdel is usually mapped to shutdown -r now in /etc/inittab. You can change it to shutdown -h now in there as well.

If your problem is only that you really, really badly want to have X running on tty1, you can of course start kdm on tty1. Then you would also only have to give your login once (was that the issue?). To do that you need to modify a few files.

  • /etc/inittab:

    Remove/comment the line that spawns the getty on tty1. It looks something like

    ## c1:12345:respawn:/sbin/agetty 38400 tty1 linux 
  • /etc/conf.d/xdm

    Tell the xdm scripts that they are working on tty1; change the entry in there to

    CHECKVT=1 

To have X start automatically you of course need it in your default runlevel (added via rc-update add xdm).

Das Verwenden von `startx 'in meinem` .bashrc` ist nicht so schlimm, da ich `if [[-z $ DISPLAY]] && [[$ (tty) = / dev / tty1]] verwende. dann startx; Ausloggen; fi (Entschuldigung, ich schätze, ich war dort nicht genau genug). Ihre Idee mit dem Start von "kdm" auf "tty1" könnte eine akzeptable Lösung sein. Der Hauptgrund, warum ich die Eingabeaufforderung für den Text eingeben möchte, besteht darin, dass ich mich auf diese Weise auch als root anmelden und in eine Shell für jede Art von Wartung fallen könnte. Und deshalb starte ich X auf `tty1` :). watain vor 13 Jahren 0
@watain: Für die Szenerie, die Sie erwähnen, sind 6 verfügbar. Nur zur Information: Verwenden Sie STRG-ALT F1..F6, um zu wechseln. Benjamin Bannier vor 13 Jahren 0
Das ist mir bewusst, aber darum geht es nicht. Ich möchte einfach in der Lage sein, die Textanmeldung bei tty1 mit meinem Benutzer zum Starten von X und für alle anderen ttys zu verwenden, um die Konsole nach dem Anmelden zu erhalten. watain vor 13 Jahren 0