Archiv verlassen und diese Seite im Standarddesign anzeigen : X startet nicht mehr :((((((((((
Hallo!
Folgendes Problem: Mein X-Server startet nicht mehr.
Ich habe rausgefunden, dass es irgendwas mit den loginmanagern
gdm, kdm bzw. xdm zu tun hat. Ich habe nämlich die rc.d wie im KDE Handbuch in
Kapitel 3.4.1.1 editiert, um kdm als loginmanager zu verwenden. (bisher wars nur text-login).
Was nun? Wer weiß rat?
Danke
Markus :confused:
:(
Weiß keiner was? Ich will nicht nochmal neu installieren, hatte gerade (fast) alles so wie ich es haben wollte.
Markus
christophwth
17.04.01, 17:16
Hi
die infos sind ein bisschen spärlich
gibt es irgendwelche fehlermeldungen
wenn du startx eingibst
ich kenne das kde handbuch leider nicht
welche distribution hast du ?
bei suse gibt es die möglichkeit mit
yast den gewünschten loginmanager
auszuwählen.
vielleicht kannst du nochmal genau beschreiben was du geändert hast.
generell kannst du die login möglichkeit
über init steuern.
init = 3 sollte der grafische login sein
mit init = 2 kommst du in den
text modus.
gruss
christoph
Also folgender Fehler tritt auf, wenn ich startx eingebe
_FontTransSocketUNIXConnect:Can't connect: erno = 111
failed to set default font path 'unix/:7100'
Fatal server error:
Could not open default font fixed
wenn ich z.B. kdm oder gdm eingebe schaltet er nur kurz die auflösung um, geht dann aber wieder in den textmodus.
Vielleicht kann mir ja jemand einfach seine rc.d schicken(RH7), und mir das ganze möglichst erklären.
Danke
Markus
Hallo Gilb,
die Meldung "failed to set default font path 'unix/:7100'
weist darauf hin, daß der X-Server so eingerichtet wurde,
daß er einen Font Server ansprechen soll.
Was aber nicht funktioniert, da offensichtlich ein Font-Server
nicht eingerichtet ist oder gestartet wurde.
Öffne mal deine XF86Config /etc/XF86Config oder /etc/X11/XF86Config
je nach Distribution
in der Section "Files"
FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/local"
FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/Type1"
# FontPath "unix/:7100" .... kommentiere einfach mal spaßeshalber
diese Zeile aus.
Der X-Server sollte jetzt eigentlich starten.
Bei SuSE sollte der Eintrag eigentlich "unix/:7101" lauten.
Funktioniert "startx"
Viel Erfolg Rainer
christophwth
17.04.01, 23:05
Hi
bei mir, SuSE 7.0, ist rc.d ein verzeichnis
dort stehen die skripte für den runlevel wechsel .
(es ist nur ein link auf /sbin/init.d )
dort ändert man nur etwas wenn es erforderlich wird
RH hat doch bestimmt auch tools dabei
um verschiedene loginmanager zu verwalten
ich kann mir kaum vorstellen das sie den user mit dieser sache alleine lassen
es kann sein das du den link gelöscht hast und deshalb probleme mit dem x-start
hast.
fall ja wäre es ein leichtes
diesen mit ln -s /etc/init.d /etc/rc.d
wieder anzulegen
der default runlevel ist in /etc/inittab
eingestellt
dieses sind alles tips die die suse distribution betreffen
wenn die struktur bei RH anders aussieht
hilft dir das hier nicht direkt weiter.
hier ein link zu einer gegenüberstellung (suse rh )
der system spezifischen sachen http://www.termer.de/buch/init.htm
du solltest versuchen den urzustand wieder herzustellen.
gruss
christoph
christophwth
17.04.01, 23:27
Hi
noch mal ich.
ich habe noch ein gute beschreibung der thematik gefunden. das was du erwäht hast kann ich zwar in keiner weise nachvollziehen, aber vielleicht gibts ja noch einen link zu dem dokument ?
na egal, hier eine anleitung für den kdm , hoffe, dass, sie genauso für RH gilt:
auszug :
<BLOCKQUOTE><font size="1" face="Arial,Helvetica,Geneva">Zitat:</font><HR>
Falls Sie eine Kdm-Anmeldebox erhalten, und Sie in der Lage sind, sich anzumelden, ist alles in
Ordnung. Das wichtigste, was hier fehlschlagen kann, ist, daß der Laufzeit-Linker vielleicht die Qt-
oder KDE-Bibliotheken nicht findet. Wenn alles läuft, verändern Sie /etc/inittab, um Kdm anstatt von
xdm auszuführen. Falls Sie eine Binärdistribution der KDE-Bibliotheken haben, ist es eventuell nötig,
Kdm zu sagen, wo KDE installiert ist (wenn KDE nicht gefunden wird, fehlen die Icons). Das wird mit
Kdm -kdedir /path/to/kde erreicht (beachten Sie, daß KDEDIR nicht eingestellt sein kann, wenn Kdm
von inittab gestartet wird). Falls Sie inittab nicht ändern möchten, möchten Sie vielleicht xdm in
xdm.bak umbenennen und xdm zu einer symbolischen Verknüpfung zu Kdm machen. Kdm liest die
generellen Displaymanager-Einstellungen aus den xdm-Konfigurationsdateien und den
Kdm-spezifischen aus der Datei $:KDEDIR/share/config/kdmrc. Kdmdesktop liest ebenso kdmrc.
[/quote]
das vollständige dokument: http://kde.sw.com.sg/documentation/de/applications/kdm/index-2.html
so ,hoffe dir hilfts weiter.
gruss
christoph
Ui freude! :)
Also X startet jetzt wieder, nachdem ich diese eine Zeile mit # ausgeklammert habe. Allerdings würde ich jetzt ganz gerne noch kdm als loginmanager verwenden. Kann mir jetzt jemand sagen, wie das geht. Hier ist übrigens meine aktuelle /etc/rc.d/rc. kdm startet damit leider nicht.
------------schnipp-----------
#! /bin/sh
# Copyright (c) 1996 S.u.S.E. GmbH Fuerth, Germany. All rights
#reserved.
#
# Author: Florian La Roche <florian@suse.de>, 1996
# Werner Fink <werner@suse.de>, 1996
#
# Modified on October, 13th by
# Andreas Buschka <andi@bonn-online.com>, 1997
# for the KDE documentation project.
#
/usr/bin/kdm
#
# . /etc/rc.d/rc
case "$1" in
start)
echo "Starting kdm."
/usr/bin/kdm
;;
stop)
echo -n "Shutting down kdm:"
killproc -TERM /opt/kde/bin/kdm
echo
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0
------------------------schnapp-------------------
Danke
Markus
christophwth
18.04.01, 22:55
Hi
bin kein RH spezi , aber warum so kompliziert
hier ist ein skript erwähnt das die umstellung von xdm auf kdm vornehmen soll http://www.redhat.com/support/manuals/RHL-6.0-Manual/install-guide/manual/doc112.html
(usekde, vielleicht existiert das in deiner version auch noch )
da ich nicht weiss an welcher stelle der xdm vorher aufgerufen wurde ,habe ich leider auch keine lösung, wofür ist die datei rc da ?
bei suse erfüllt sie den zweck
eines Master Resource Control Scripts
von hier wir die rc.config
aufgerufen.
vielleicht findest du ja noch ein handbuch
in dem die genaue struktur des init vorgangs
beschrieben ist.
gruss
christoph
gruss
christoph
So, kdm startet jetzt im runlevel 3. Jetzt kann ich aBär leider nicht mehr richtig runterfahren. Wenn ich "halt" ausführe kommt folgendes:
-------
localhost login:Usage: etc/rc.d/rc {start|stop}
INIt: no more processes left in this runlevel
---------
Was nun??
Danke
Markus
Weiß wirklich keiner Hilfe? Es ist nämlich nicht so toll, dauernd einen fsck beim booten durchzuführen, nur weil sich der COmputer nicht runterfahren lässt.
:(
wieso startest du ueberhaupt einen loginmanager im runlevel 3 ? der ist dafuer doch gar nicht vorgesehen.
kdm wurde bestimmt auch schon nach deinem ersten versuch gestartet, allerdings erst in rl5.
um in den rl5 zu booten musst nix anderes machen, als in deiner /etc/inittab
die zeile
id:3:initdefault:
in
id:5:initdefault:
aendern. fertig. schon startet er in den rl5. wenn du dann von x aus in den rl3 willst, gibst in einem xterm
init 3
ein.
im uebrigen kannst du ihn (wenn der kdm in rl5 laeuft) auch von einem xterm aus 'halten' lassen.
cheers
Ja, auch im rl5 startet der kdm. Hilft aber leider nix an meinem Problem. Linux fährt nicht mehr runter. (Habs ja oben schon mal gepostet).
Markus
christophwth
24.04.01, 09:22
Hi
der xdm im runlevel 3 ist alt.
zumindest wurde bei der SuSE 7.0
der xdm durch folgende skripte gesteuert
die aus runlevel 3 gestartet wurden.
<pre>
lrwxrwxrwx 1 root root 6 Feb 26 2000 K12xdm -> ../xdm
lrwxrwxrwx 1 root root 6 Feb 25 01:00 S10xdm -> ../xdm
</pre>
die skripte die mit K beginnen sind für das
beenden der prozesse zuständig.
die nummer gibt an an welcher
stelle der befehl ausgeführt werden soll,
wenn der runlevel verlassen werden soll.
ich würde dir raten den xdm (kdm ) nur
im runlevel 5 zu starten bzw. zu stoppen
hier das xdm start stop skript von suse 7.1
#! /bin/bash
# Copyright (c) 1996-99 SuSE GmbH Nuernberg, Germany. All rights reserved.
#
# Author: Florian La Roche <florian@suse.de>, 1996
# Werner Fink <werner@suse.de>, 1996,98,99
# Martin Scherbaum <maddin@suse.de>, 1997
# Reinhard Max <max@suse.de>, 1997
#
# /etc/init.d/xdm
#
### BEGIN INIT INFO
# Provides: xdm
# Required-Start: $remote_fs $syslog ypbind
# Required-Stop:
# Default-Start: 5
# Default-Stop:
# Description: X Display Manager
### END INIT INFO
. /etc/rc.status
. /etc/rc.config
. /etc/SuSEconfig/profile
locale_vars="\
LANG \
LC_ALL \
LC_MESSAGES \
LC_CTYPE \
LC_COLLATE \
LC_TIME \
LC_NUMERIC \
LC_MONETARY"
for var in $locale_vars
do
if eval test -z "\$$var"; then
eval $var="\$RC_$var"
export $var
fi
done
case "$DISPLAYMANAGER" in
kdm|kde|KDM|KDE) DISPLAYMANAGER=/opt/kde/bin/kdm
test -x /opt/kde2/bin/kdm && \
DISPLAYMANAGER=/opt/kde2/bin/kdm ;;
gdm|GDM|Gnome|GNOME) DISPLAYMANAGER=/opt/gnome/bin/gdm ;;
wdm|WDM) DISPLAYMANAGER=/usr/X11R6/bin/wdm ;;
*) DISPLAYMANAGER=/usr/X11R6/bin/xdm ;;
esac
test ! -x "$DISPLAYMANAGER" && DISPLAYMANAGER=/usr/X11R6/bin/xdm
DM=${DISPLAYMANAGER##*/}
rc_reset
case "$1" in
start)
echo -n "Starting service $DM"
startproc $DISPLAYMANAGER || rc_failed
# After a crash or a kill signal we may have
# a wrong owner ship of /dev/xconsole
if rc_status ; then
if test -x /etc/X11/xdm/TakeDevices ; then
/etc/X11/xdm/TakeDevices
else
chown root:tty /dev/xconsole /dev/tty0
chmod 622 /dev/xconsole /dev/tty0
fi
fi
rc_status -v
;;
stop)
echo -n "Shutting down service $DM"
#
# killproc(8) sleep upto five seconds and sends
# SIGKILL if xdm does not terminate within
#
killproc -TERM $DISPLAYMANAGER
rc_status -v
;;
restart)
$0 stop && $0 start
rc_status
;;
reload)
echo -n "Reload service $DM"
killproc -HUP $DISPLAYMANAGER || return=$rc_failed
echo -e "$return"
;;
status|check)
echo -n "Checking for service ${DM}: "
checkproc $DISPLAYMANAGER && echo "is running" || echo "is NOT running"
;;
probe)
XDMDIR=/usr/X11R6/lib/X11/xdm
if test $XDMDIR/xdm-config -nt /var/run/xdm.pid -o \
$XDMDIR/Xservers -nt /var/run/xdm.pid
then
echo reload
fi
;;
*)
echo "Usage: $0 {start|stop|status|restart|reload|probe}"
exit 1
esac
rc_exit
wie gesagt das ist von SuSE vielleicht
hilfts dir weiter.
guss
christoph
Danke christophwth, aber es ging (leider) nicht. Ich brauche wahrscheinlich dass von RH7, wenn nicht muss ich auf ne andere Partition installieren, und das Skript kopieren. Das dauert aber. Deshalb nochmal die Bitte an alle hier die Datei zu posten.
Danke
Markus :cool:
Hallole,
hab doch glatt noch ne Sicherung von ner RH7 installation gefunden, war ne neuinstallation ohne irgendeine änderung, von der ich das /etc verzeichnis gesichert hab, hoffe s bringt dich weiter ;)
---------------------------------------------
#!/bin/bash
#
# rc This file is responsible for starting/stopping
# services when the runlevel changes.
#
# Temporary feature:
# If the action for a particular feature in the new run-level
# is the same as the action in the previous run-level, this
# script will neither start nor start that feature, since that
# would have no effect except to thrash the system for no reason.
# Once all scripts are converted to use start-stop-daemon
# to _start_ their daemons (most of them only use it to kill
# them), this feature can be removed.
#
# $Id: rc,v 1.7 1999/07/14 21:36:04 ray Exp $
#
# Author: Miquel van Smoorenburg, <miquels@drinkel.ow.org>
# Hacked to bits by Bruce Perens <Bruce@Pixar.com>
# Modified for COL by Raymund Will <ray@lst.de>
#
export RC_DEBUG=false
export RC_VERBOSE=true
LOG=/dev/tty12
true() { return 0; }
false() { return 1; }
Echo() {
local a=$1; shift
local o=$1; shift
local i
echo -n "$a" >> $LOG
for i in "$@"; do
echo -n " '$i'" >> $LOG
done
echo "$o" >> $LOG
}
# check for new-style boot-logger
export SVIBooter=/sbin/booter
[ -x $SVIBooter ] || SVIBooter=false
if $SVIBooter test; then
export SVIuseBooter=true
CMDS="add start"
# redirect STDOUT and STDERR
exec - >> $LOG 2>&1
#DEBUGGING
Booter() {
local c=$1; shift
local s
local i
case "$c" in
add)
s="$1"; shift
eval "$s" $c
;;
start)
s="$1"; shift
eval "$s" $c "$@"
case $? in
0) $SVIBooter ok;;
1) $SVIBooter fail;;
2) $SVIBooter skip;;
*) $SVIBooter "N/A";;
esac
;;
stop)
s="$1"; shift
Echo "# Booter " "." "$s" $c "$@"
eval "$s" $c "$@"
;;
*)
$SVIBooter $c "$@"
;;
esac
}
[ -z "$PREVLEVEL" ] && {PREVLEVEL=N
else
SVIuseBooter=false
CMDS="start"
# Set onlcr to avoid staircase effect.
stty onlcr 0>&1
Booter() {
local c="$1"; shift
[ "$c" != "start" -a "$c" != "stop" ] && return 0
local s="$1"; shift
Echo "# eval " "." "$s" $c "$@"
eval "$s" $c "$@"
}
fi
# Now find out what the current and what the previous runlevel are.
runlevel=$RUNLEVEL
# Get first argument. Set new runlevel to this argument.
[ -n "$1" ] && runlevel=$1
previous=$PREVLEVEL
Echo "runlevel=$runlevel previous=$previous" "."
export runlevel previous
RCD=/etc/rc.d
# Is there an rc directory for this new runlevel?
if [ -d "$RCD/rc$runlevel.d" ]; then
avoid="" # A list of start scripts I don't have to run.
# First, run the KILL scripts.
if [ "$previous" != N ]; then
for i in $RCD/rc$runlevel.d/K[0-9][0-9]*; do
# Check if the script is there.
[ -f "$i" ] || continue
suffix=${i#$RCD/rc$runlevel.d/K[0-9][0-9]}
# Generate the name of the start script corresponding
# to this stop script, the start script in the previous
# level, and the stop script in the previous level.
# Check these files, and see if the previous level's
# files are links to the ones for this level.
# If they are, this level treats this feature the same
# as the previous level, and I don't have to run these
# files.
stopIt=true
start=$RCD/rc$runlevel.d/S[0-9][0-9]$suffix
previous_start=$RCD/rc$previous.d/S[0-9][0-9]$suffix
previous_stop=$RCD/rc$previous.d/K[0-9][0-9]$suffix
if [ -f $previous_stop ] && [ $i -ef $previous_stop ]; then
stopIt=false
if [ -f $start ] || [ -f $previous_start ]; then
if [ -f $start ] &&
[ -f $previous_start ] &&
[ $start -ef $previous_start ]; then
stopIt=true
else
avoid=$avoid" "$start
fi
fi
fi
# Kill it.
$stopIt && Booter stop $i
done
fi
Booter list "RUNLEVEL Run-level change..."
Booter add_menu "BLANK4"
Booter add_menu "T4 Entering run-level $runlevel:"
for cmd in $CMDS; do
# Now run the START scripts for this runlevel.
for i in $RCD/rc$runlevel.d/S*; do
# Check if the script is there.
[ -f "$i" ] || continue
startIt=true
case " $avoid " in
*\ $i\ *) startIt=false;;
esac
if $startIt; then
suffix=${i#$RCD/rc$runlevel.d/S[0-9][0-9]}
previous_start=$RCD/rc$previous.d/S[0-9][0-9]$suffix
stop=$RCD/rc$runlevel.d/K[0-9][0-9]$suffix
if [ -f $previous_start ] &&
[ $i -ef $previous_start ] &&
[ ! -f $stop ]; then
startIt=false
fi
fi
$startIt && Booter $cmd $i
done
if [ "$cmd" != "add" ]; then
Booter complete RUNLEVEL
else
Booter end
Booter activate RUNLEVEL
fi
done
fi
[ $SVIuseBooter = false ] && exit 0
if [ $runlevel != 5 ]; then
sleep 1
/usr/bin/chvt 1
else
/sbin/booter list "FINAL"
/sbin/booter add_menu "BLANK5"
/sbin/booter add "KDE Starting KDE"
/sbin/booter end
/sbin/booter activate "FINAL"
/sbin/booter item "KDE"
sleep 1
( trap "" SIGHUP
sleep 10
echo -e "\n\nPlease switch to a different virtual console for login!\n\n"
) > /dev/tty7 &
fi
Booter quit
# eof /etc/rc.d/rc
-----------------------------------------
Gruß micha
Juchu, freude, freu :) :D
's geht wieder. Linux fährt wieder anständig runter. Hab allerdings jetzt gdm anstatt kdm als loginmanger. Wenn jemand noch antwort weiß, kann er's ja hier posten. Ansonsten Danke euch allen.
Gruß
Markus
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.