kdm - keine tastatur

heesen

Rainer Heesen
Hallo zusammen,

auf meinem neu installiertem FreeBSD-Rechner (FreeBSD 5.3-Stable) gibt es unter KDE 3.3.2 folgende merkwürdige Situation.

Wenn ich mich als root zunächst auf der Konsole einlogge und anschließend manuell kdm starte über ein Shellskript, funktioniert alles einwandfrei (Xorg startet, KDE login prompt erscheint, Maus und Tastatur funktionieren, einloggen, KDE-Desktop verfügbar).

Wenn ich dagegen das Shellskript beim Start aus /usr/local/etc/rc.d/ ausführen lasse, startet Xorg und es erscheint das KDE login prompt. Die Maus kann ich bewegen, allerdings funktioniert die Tastatur nicht. (Ich habe das mehrfach ausprobiert.) So kann ich dann kein Passwort eingeben und muss rebooten.

Das Shellskript ist recht einfach gehalten:

#!/bin/sh

PREFIX=/usr/local

case "$1" in
start)
${PREFIX}/bin/kdm
;;
stop)
/usr/bin/killall -m kdm 2>/dev/null
;;
*)
echo "Usage 'basename $0' start | stop"
exit 64
;;

esac
exit 0

Bei diesem automatisch ausgeführten Skript /usr/local/etc/kmd.sh ist die Tastatur nicht benutztbar, wenn ich es umbenenne in kdm.sh.inactive und manuell als root starte, funktioniert die Tastatur.

In der Datei xorg.conf in /usr/X11R6/lib/X11 hatte ich in der Keyboard Input Device Section mal mit keyboard, mal mit kbd als Driver experimentiert. Es änderte sich allerdings nichts. Sowohl kdm.log als auch Xorg.0.log weisen in /var/log keine Fehler aus.

Den Hinweis aus /usr/ports/UPDATING vom 20041229 zu kde habe ich auch berücksichtigt.

Könnt ihr mir vielleicht einen Tipp geben?

Viele Grüße

Rainer
 
keine tastatur?

Ich hatte dieses Problem einmal
in Kombination mit samba is schon laenger her
das Prob. hatte ich letztendlich erschlagen, in dem
ich den kdm anstelle des xdm in die /etc/ttys eingetragen
habe. Ist vielleicht nich besonders elegant, hat aber
funktioniert.
noch uneleganter ist es wenn tatsaechlich samba das Prob. ist,
die nmbd, smbd etc. in der rc.conf.local oder so zu laden.
Funktioniert aber auch.

greetz delmo
 
Zuletzt bearbeitet:
heesen schrieb:
auf meinem neu installiertem FreeBSD-Rechner (FreeBSD 5.3-Stable) gibt es unter KDE 3.3.2 folgende merkwürdige Situation.

Wenn ich mich als root zunächst auf der Konsole einlogge und anschließend manuell kdm starte über ein Shellskript, funktioniert alles einwandfrei [...schnipp...] Bei diesem automatisch ausgeführten Skript /usr/local/etc/kmd.sh ist die Tastatur nicht benutztbar, wenn ich es umbenenne in kdm.sh.inactive und manuell als root starte, funktioniert die Tastatur.
Das Skript startet KDM, bevor die ttys aktiviert werden. Ein sleep vor dem Starten sollte helfen. Die Schlafdauer hängt vom System ab -- bei mir reichten 60 Sekunden.
 
Das Skript startet KDM, bevor die ttys aktiviert werden. Ein sleep vor dem Starten sollte helfen. Die Schlafdauer hängt vom System ab -- bei mir reichten 60 Sekunden.
Dieser Sleep-Trick wurde unter:
http://www.bsdforen.de/showthread.php?t=3177
schon erwähnt, ist aber eine unsaubere Lösung!

Bessere Lösung:
Das KDM-Shellskript gehört ins Verzeichnis /usr/X11R6/etc/rc.d !

Ein KDM-Shellskript-Beispiel findet man unter:
http://wiki.bsdforen.de/index.php/FreeBSD_-_KDM
 
gute Idee, habe ich ausprobiert, allerdings funktioniert es immer noch nicht.

Ich habe das Shell Skript in /usr/X11R6/etc/rc.d/ geschoben und dort noch ein sleep 90 eingetragen. Leider funktioniert es immer noch nicht. Mein Eindruck war, dass der Rechner stoppt und keine weiteren Start-Shell-Skripts ausführt, sobald im kdm.sh das sleep 90 ausgeführt wird.

Gibt es noch weitere Möglichkeiten?

Viele Grüße

Rainer
 
AndreasMeyer schrieb:
Das KDM-Shellskript gehört ins Verzeichnis /usr/X11R6/etc/rc.d !
Darüber ließe sich vortrefflich streiten, denn der gesamte KDE wird nach /usr/local installiert. Und das obwohl es definitiv eine X-Anwendung ist und eigentlich nach /usr/X11R6 gehörte (IMHO)...
Was spricht gegen ein Starten des [xk]dm aus /etc/ttys?
 
ich habe zu Beginn des Shell-Skripts sleep 60 bzw. sleep 90 eingetragen, aber es funktionierte nicht. Ich hatte den Eindruck, dass der Computer mit der Ausführung der weiteren Shellskripte wartet.

Sollte ich das Sleep anderes einfügen? z.B. so: exec ´{sleep 60 && /usr/local/bin/kdm}
 
Tulkas schrieb:
Was spricht gegen ein Starten des [xk]dm aus /etc/ttys?
Nichts. Funktioniert einwandfrei.

Das Startskript in /etx/X11/rc.ds legen ist aber wohl die bessere Alternative: so kann man den[xk]dm deaktivieren, ohne init zu belästigen.
 
Zuletzt bearbeitet:
Ich bin lernfähig: entweder gehört der Script nach /usr/X11R6/etc/rc.d, oder man sollte xdm aus /etc/ttys starten.

Der Trick mit sleep funktioniert zwar, ist allerdings tatsächlich unsauber. Er würde wie von Dir beschrieben funktionieren. Mir war die Lösung nur noch nicht bekannt.
 
Darüber ließe sich vortrefflich streiten, denn der gesamte KDE wird nach /usr/local installiert.
Darüber lässt sich nicht streiten, es hat einen technischen Grund:

Shellskripte unter /usr/X11R6/etc/rc.d werden nach der Initialisierung/Freigabe von ttys (ttys => Virtuelle Konsolen) ausgeführt, /usr/local/etc/rc.d vor der ttys-Initialisierung. Wird also kdm mit einem Shellskript aus /usr/local/etc/rc.d vor der ttys-Initialisierung gestartet, so kann es vorkommen, dass eben die Tastatureingaben im KDM nicht akzeptiert werden! => Ich hoffe die Begründung sei einigermassen technisch korrekt..
 
Hallo cheasy,

wobei der gdm aber NICHT aus /etc/ttys heraus gestartet werden darf!
Steht ausdrücklich in der Beschreibung zum gdm.

Viele Grüße

Jürgen
 
Hallo Rainer,

beim gdm kann in der Konfiguration festlegen, dass er X an ein virtuelles Terminal binden soll.
Code:
FirstVT = 9
VTAllocation=true
Nachdem ich das in meine gdm-conf eingetragen hatte, lief er gdm so wie er soll.
Git es eine Einstellung auch beim kde? Schau doch mal nach.

Viele Grüße

Jürgen
 
Zurück
Oben