Kann X nicht starten

OsunSeyi

Well-Known Member
Hallo, ich habe gerade Fvwm geschreddert (eine Zeile falsch eingefügt). Jetzt beendet er sich und X auch gleich mit. Da in Xenodm Autologin konfiguriert ist, müsste ich irgendwie vor dem Start von X an eine Konsole kommen, um den Fehler zu beheben. Ich vermute mal, das geht über die InstallationsCD aber geht es auch aus dem bootenden System heraus?

Jetzt läuft es immer schön im Kreis, X startet, Fvwm stürzt ab, X startet wieder usw. Ich meine es sollte so sein, daß zwar ein Autologin beim Booten durchgeführt wird, im Fall vom beenden von Fvwm aber doch ein grafischer Login kommt. So kenne ich es von Linux. Dann kann man mit einer F Taste glaube ich eine Konsole aufrufen und von dort aus weiter machen.
 
Zuletzt bearbeitet:
Hallo, ich habe gerade Fvwm geschreddert (eine Zeile falsch eingefügt). Jetzt beendet er sich und X auch gleich mit. Da in Xenodm Autologin konfiguriert ist, müsste ich irgendwie vor dem Start von X an eine Konsole kommen, um den Fehler zu beheben. Ich vermute mal, das geht über die InstallationsCD aber geht es auch aus dem bootenden System heraus?

Ja, einfach im single-user modus booten sollte das erledigen - boot -s

Alternativ solltest mit Str + Alt + F1 auch unter gestarteten X eine Konsole bekommen, sofern deine Hardware das unterstützt (sollte sie)
 
Das klappt leider nicht. Kann ich einen Bootprompt bekommen?
Wenn ich auf eine virtuelle Konsole mit Strg Alt F1 oder F2 wechsel, will immer wieder X starten. Selbst wenn ich versuche, mich ganz schnell einzuloggen, klappt das nicht. Immer Autologin...
 
Das klappt leider nicht. Kann ich einen Bootprompt bekommen?
Wenn ich auf eine virtuelle Konsole mit Strg Alt F1 oder F2 wechsel, will immer wieder X starten. Selbst wenn ich versuche, mich ganz schnell einzuloggen, klappt das nicht. Immer Autologin...

Hmmm merkwürdig.

Der Boot-Prompt wo du boot -s eingeben kannst sollte direkt nach dem BIOS kommen, da hast du dann ein paar sekunden bevor er den standard-kernel automatisch bootet. Die Zeit wird komplett gestoppt sobald du den ersten Buchstaben eingibst

Villeicht auch als info mit boot bsd.rd kannst du z.B. einen ramdisk-kernel starten wenn das system garnicht mehr bootet
 
Ich musste die Tastatur vom Laptop nehmen, dann gehts. Komme allerdings nicht an meinen Home Account. Wie soll ich da die .fvwmrc editieren? Ach ich muß sie vermutlich mounten...
 
OK, es hat geklappt. Vielen Dank!
Eigendlich keine gute Lösung. Daß beim Anpassen von FVWM mal ein Fehler unterläuft, mag ja passieren.
Awesome lädt in solchen Fällen automatisch die default-Config.

Fvwm wird mit exec /usr/X11R6/bin/fvwm geladen.
Wenn ich jetzt danach noch eine Zeile mv ~/.fvwmrc ~/.fvwmrc-bak einfüge?

Was passiert, wenn ich dann halt -p ausführe?
Man müsste es so einrichten, daß FVWM im Falle eines Absturzen die Default-Config lädt.
 
OK, es hat geklappt. Vielen Dank!
Eigendlich keine gute Lösung. Daß beim Anpassen von FVWM mal ein Fehler unterläuft, mag ja passieren.

Man müsste es so einrichten, daß FVWM im Falle eines Absturzen die Default-Config lädt.

Naja man macht halt einfach keinen Auto-Login? So kann man sich dann einfach z.B. mit einem Backup-User anmelden ODER halt mit Strg + Alt + F1 einfach auf die Konsole wechseln und sich da anmelden, ggf. als root wenn man sich den user ganz zerschossen hat.

Oder man spielt halt nicht mit diesen rc krams rum ;)

Ich musste die Tastatur vom Laptop nehmen, dann gehts. Komme allerdings nicht an meinen Home Account. Wie soll ich da die .fvwmrc editieren? Ach ich muß sie vermutlich mounten...

Ja am Boot-Prompt funktioniert afaik nur das was das BIOS/UEFI Bereit hält - stellt das keine USB-Tastatur bereit über irgend ne Emulations-Bastelei geht nur die eingebaute Tastatur - ich hab hier nen Rechner mit OpenBSD, da geht das nur mit ner alten PS/2 Tastatur, und die Kiste nicht mal so alt
 
Also entweder macht man kein "autologin" solange man noch in fvwmrc "experimentiert".
Oder man probiert mal mit anderen $DISPLAY und -f andereconfig das erstmal parallel aus?

So loops sind trotzdem unschoen..
 
Ja es ist eine Qual...

Ich habe FVWM2 schonmal unter FreeBSD konfiguriert und möchte es eigentlich nur hier zum laufen bringen.

Dort war auch Autologin konfiguriert, aber ich glaube nicht, daß ich jedesmal X neu starten mußte, wenn mal ein Komma gefehlt hat.

Jetzt aber jedesmal im Singel-User-Mode neu zu starten und die Sache zu richten ist (großer) Mist. Warum das auf Freebsd so toll anders war, weiß ich nicht.

Ich denke, es gibt zB auch Konstrukte, wo man das Desktop-Enviroment im laufenden Betrieb wechseln kann, warum sollte es nicht irgendwie möglich sein zu erreichen, daß wenn sich FVWM beendet, noch ein Auwahlmenü kommt, was die FVWM Defaultconfig lädt.

Code:
# Ende der ~/.xsession:
# Das Home-Verzeichnis von FVWM (neu) festlegen,
# Windowmanager starten:

         export FVWM_USERDIR='/home/tom/CONF/FVWM'
         exec /usr/X11R6/bin/fvwm -f /home/tom/.fvwmrc

# Hier zB:
         exec /usr/X11R6/bin/fvwm -f /home/tom/.fvwmrc-bak

Ob das funktioniert?
Müsste ich das 'exec' weglassen?
 
Wenn ich auf maschinen irgendwie rumexperimentiere (bzw hatte, sowas mach ich nur noch sehr sehr sehr selten) wo man irgendwie X / User abschießen könnte, kann es sinn machen sshd zu starten so das man sich remote noch einloggen kann.
 
eher was in der richtung "fvwm || fvwm -f .fvwmrc-bak", sofern fvwm da auch mit einem error-code rausgeht.
Das Problem ist halt, dass ein zweiter/neuer fvwm erstmal nichts vom vorherigen weiss (ob dieser "normal" beendet wurde, oder nicht..)

Mit "ich will halt so und so" laesst sich immer einfach in Worte fassen, aber das in Konfiguration umzusetzen ist was anderes :)

So ein check auf parsing-errors waere beim rumspielen aber schon eine Hilfe - "muss man halt machen" ..
 
Ich habe gerade gelesen, das natürlich auch bei Fvwm im Fall einer korrupten Konfigurationsdatei auf das Original /usr/X11R6/lib/X11/fvwm/system.fvwm2rc zurückgegriffen wird (werden sollte). Es ist ja normal, den Windomanager zu konfigurieren (zu können). Autostart ist erstmal wieder raus.

So ein check auf parsing-errors waere beim rumspielen aber schon eine Hilfe - "muss man halt machen" ..

Wie geht das?
 
schrieb ich doch schon.. fvwm -f andere_datei in einem xterm aufrufen. das wird zwar wahrscheinlich wegen display mosern, aber syntaxfehler wuerde man schon sehen
 
[FVWM][CatchRedirectError]: <<ERROR>> another WM is running

Die Frage ist ja überhaupt, warum Fvwm gleich abstürzt... ist doch ungewöhnlich.
 
Ich hab mal einfach ein 'x' eingebaut, das stört FVWM jedenfalls nicht weiter:

Code:
xsession-errors:
[FVWM][executeModule]: <<ERROR>> No such module 'x' in ModulePath '/usr/X11R6/lib/X11/fvwm'
[FVWM][ProcessNewStyle]: <<ERROR>> bad style command: GrabFocus, SloppyFocus, MouseFocusClickRaises

..werde mal geziehlt meine Config reduzieren.
Er startet auch mit einer leeren Config problemlos.
 
aber man SIEHT errors und so eine Config sollte man dann nicht verwenden..

Fuer ein fvwm -f kaputt || fvwm -f tut` Konstrukt taugt es aber leider nicht. Evtl was mit 0 bytes in xsession-errors...
 
Code:
    TARGET=`ls -l ~/.fvwmrc | sed 's|^.*TANGLE/||g'`

    case $TARGET in

            fvwmrc) ln -sf ~/CONF/TANGLE/fvwmrc-new   ~/.fvwmrc ;;
        fvwmrc-new) ln -sf ~/CONF/TANGLE/fvwmrc       ~/.fvwmrc ;;
    esac

#    ls -l ~/.fvwmrc | sed 's|^.*TANGLE/||g'

    pkill fvwm

..tut es.
Wie auch immer, wechselt die Config, killt Fvwm, und ein neuer Login steht an.

Tatsächlich werden Fehlermeldungen von Fvwm in der .xsession-errors ausgegeben.

Was das Problem zu sein scheint:

Code:
# Funktioniert nicht:

SetEnv FVFM_CONF /home/tom/CONF/FVWM/FILES
Read $[FVWM_CONF]/1_KEYBIND

# Funktioniert:

Read /home/tom/CONF/FVWM/FILES/1_KEYBIND

# .xsession-errors:
# [FVWM][Read]: <<ERROR>> file '$[FVWM_CONF]/1_KEYBIND' not found in $HOME or /usr/X11R6/lib/X11/fvwm

Es geht auch nicht, wenn ich '/home/tom' weglasse (er schaut ja in $HOME) sondern er expandiert tatsächlich die Variable nicht; auch nicht ohne eckige Klammern oder in Doublequotes wobei die mir bekannte Form $[var] ist. Das hat auch in der früheren Config geklappt. Klar, man kann alles umschreiben und Variablen weglassen aber wieso?
 
Code:
SetEnv    fvwm_wallpaper_dir    $[HOME]/windows/images/backgrounds
Das ist aus einer anderen Config...
Hilfe wo ist der Unterschied?
:confused:

Zensitis
 
Zuletzt bearbeitet:
Also der Tippfehler ist da, aber Variablen werden wohl trotzdem nicht geparst.
Peinlich....

Code:
        SetEnv FVWM_CONF /home/tom/CONF/FVWM/FILES
        Read $[FVWM_CONF]/1_KEYBIND

# [FVWM][Read]: <<ERROR>> file '$[FVWM_CONF]/1_KEYBIND' not found in $HOME or /usr/X11R6/lib/X11/fvwm

Das klappt auch nicht, wenn ich /home/tom weglasse (weil er ja in $HOME sucht)

Wobei ich sagen muß, daß in der gesamten Config so wenig Variablen vorkommen, daß ich sie eigentlich auch weglassen könnte...
 
Zuletzt bearbeitet:
In der bestehenden Systemconfig (nach $HOME kopiert, klar):

Code:
# Original Code:

*FvwmPagerLabel 0 "Hallo"      # klappt

SetEnv PAGER_LABEL Hallo       # oder:
SetEnv PAGER_LABEL "Hallo"

*FvwmPagerLabel 0 $[PAGER_LABEL]   # klappt nicht
*FvwmPagerLabel 0 $PAGER_LABEL     # klappt nicht
*FvwmPagerLabel 0 "$PAGER_LABEL"   # klappt nicht

So schaut's aus. In der Systemconfig kommen schlicht sonst keine Variablen vor.
Sie werden ganz einfach nicht expandiert.
 
Es kommen schon Variablen vor:
zB

+ "Reset X defaults" Exec xrdb -load $HOME/.Xdefaults (Zeile 124)

Wenn ich aber einsetze:

Read $HOME/CONF/FVWM/FILES/1_KEYBIND

...bekomme ich das übliche in der xsession-errors:

[FVWM][Read]: <<ERROR>> file '$HOME/CONF/FVWM/FILES/1_KEYBIND' not found in $HOME or /usr/X11R6/lib/X11/fvwm

Warum aber nicht in dem Eintrag "Reset X defaults", der doch auch eine Fehlermeldung verursachen müsste?
:ugly:

nicht daß Ihr denkt, ich spinne:

Code:
~ ls $HOME/CONF/FVWM/FILES/1_KEYBIND
/home/tom/CONF/FVWM/FILES/1_KEYBIND
 
mal absolut ins blaue geschossen - aber auch nur, weil ich so nen Spaß in anderem Zusammenhang auch und gerade mit der korrekten Auflösung von $HOME schon hatte (nicht in Zusammenhang mit fvwm):

der Userkontext in welchem die Fehlermeldung in der xsession-errors erzeugt wird, ist nicht dein User "tom", sondern ein anderer (Systemuser), welcher fvwm ausführt - und somit scheitert der Read, da $HOME/.....1_KEYBIND unter diesem anderen User ja wirklich nicht existiert?
 
Code:
AddToMenu Utilities     "Utilities" Title
+              "Top"          Exec exec xterm -T Top -n Top -e top
+              "Calculator"   Exec exec xcalc
+              "Xmag"         Exec exec xmag
+                       "Editres"       Exec exec editres
+              ""        Nop
#+            "XEmacs"  Exec exec xemacs
#+                       "Mail"          MailFunction xmh "-font fixed"
#+            ""        Nop
+                       "XLock%mini.xlock.xpm%"         Exec exec xlock
+              ""        Nop
+                       "Reset X defaults" Exec xrdb -load $HOME/.Xdefaults

So schaut's aus, es geht um den Menüpunkt "Reset X defaults" .
Löst man den aus, erscheint in der xsession-errors xrdb: colon missing on line 13, ignoring line weil in der ~/.Xdefaults tatsächlich genau dort ein Doppelpunkt fehlt. Hier wird also aufgelöst!!

Ich habe meinen Eintrag mal genau darunter gesetzt:

Code:
AddToMenu Utilities     "Utilities" Title
+              "Top"          Exec exec xterm -T Top -n Top -e top
+              "Calculator"   Exec exec xcalc
+              "Xmag"         Exec exec xmag
+                       "Editres"       Exec exec editres
+              ""        Nop
#+            "XEmacs"  Exec exec xemacs
#+                       "Mail"          MailFunction xmh "-font fixed"
#+            ""        Nop
+                       "XLock%mini.xlock.xpm%"         Exec exec xlock
+              ""        Nop
+                       "Reset X defaults" Exec xrdb -load $HOME/.Xdefaults

Read $HOME/CONF/FVWM/FILES/1_KEYBIND
Und Du glaubs es nicht: Die Fehlermeldung 'File not found' ist wieder da!
Wieso geht dasselbe zwei Zeilen höher nicht? Weil der Zusammenhang ein anderer ist? Weil "Read" eben nicht auflöst, Funktionen aber schon...
 
Zurück
Oben