VNC Session schließt sich nicht komplett
Hallo,
ich habe eben den VNC-Server auf meinem Fedora Core 8 Server
konfiguriert und erfolgreich gestartet.
Jetzt habe ich aber folgendes Problem?!:
Immer wenn ich die geöffnete VNC-Session schließen möchte (Usersitzung beenden...),
bleibt das VNC-Fenster zum Schluss schwarz und es passiert garnichts mehr!
Ich kann mich dann auch nicht mehr einloggen, sodass ich erst den VNC-Server restarten muss,
um mich nocheinmal anzumelden.
Kennt jemand von euch das Problem? WIe kann ich es wohl beheben? ;-$
Gruß
Chribu
ich habe eben den VNC-Server auf meinem Fedora Core 8 Server
konfiguriert und erfolgreich gestartet.
Jetzt habe ich aber folgendes Problem?!:
Immer wenn ich die geöffnete VNC-Session schließen möchte (Usersitzung beenden...),
bleibt das VNC-Fenster zum Schluss schwarz und es passiert garnichts mehr!
Ich kann mich dann auch nicht mehr einloggen, sodass ich erst den VNC-Server restarten muss,
um mich nocheinmal anzumelden.
Kennt jemand von euch das Problem? WIe kann ich es wohl beheben? ;-$
Gruß
Chribu
Please also mark the comments that contributed to the solution of the article
Content-ID: 83023
Url: https://administrator.de/contentid/83023
Printed on: September 1, 2024 at 00:09 o'clock
14 Comments
Latest comment
![27688](/images/members/profile_male_48x48.png)
Immer wenn ich die geöffnete
VNC-Session schließen möchte
(Usersitzung beenden...),
VNC-Session schließen möchte
(Usersitzung beenden...),
bin mit dem Ausdruck "Usersitzung beenden" nicht vertraut. tust du dich am desktop "abmelden" also ein LOGOUT machen oder "trennst" du dich mit deinem VNC client nur vom VNC Server (vncviewer schließen) ?
hab neulich was zu dem thema gelesen das es fälle gibt in welchen der display-manager (kdm/xdm) den X-Server nach einer sitzung nicht mehr neu startet..wenn ich jetzt noch wüsste wo das war.
das könnte jedenfalls mit dem vnc-server zusammenhängen den du verwendest. es gibt vnc-server die stellen einen eigenen X-Server dar. d.h. du verbindest dich mit vncclient darauf und bekommst einen eigenen anmeldebildschirm und desktop parallel bzw autonom von deinem "lokalen" desktop.
andere vncserver hingegen verbinden dich DIREKT auf die aktive grafische oberfläche deines lokalen desktops. so das dein vncclient und die lokale konsole den gleichen desktop bewirtschaften.
welchen vncserver verwendest du denn gerade?
und war dieser bei Fedora Core 8 Server schon mit dabei oder hast du den nachinstalliert?
![27688](/images/members/profile_male_48x48.png)
Ich versuche mich am Desktop abzumelden, was
auch eigentlich funktioniert (bis zum
genannten schwarzen Bildschirm) und dann muss
ich das Fenster schließen, um den
VNC-Viewer zu beenden!
auch eigentlich funktioniert (bis zum
genannten schwarzen Bildschirm) und dann muss
ich das Fenster schließen, um den
VNC-Viewer zu beenden!
ok. d.h. du beendest die aktuelle X-Sitzung und der aktuelle X-Server stirbt darauf hin. soweit sogut.
ich kenne mich mit fedora nicht aus. aber wenn ich in diese konfig files sehe sieht es für mich so aus als wäre das eine VNCServer installation des typs 2 ( vnc user verbindet sich DIREKT mit der grafischen oberfläche der lokalen console (Display 0
d.h. ich vermute daher dass diese konfig nicht einen "terminalserver" (multiuser) darstellen soll, sondern dass es einem benutzer der gerade an der grafischen konsole angemeldet ist ermöglicht werden soll das ihm jemand von aussen helfen kann und sich direkt auf seinen bildschirm aufschalten soll. kann das sein ?
kannst du von einem zweiten PC daneben per VNC auf die machine zugreifen und den desktop (display 0
1. PC1 neu starten (frisch gebootet) und NICHT anmelden!!
2. an PC2 versuchen per VNC auf PC1 zuzugreifen. geht das? was siehst du ?
3. Siehst du parallel dazu auf PC1 (VNC Server) das sich die Maus bewegt wenn du damit auf PC2 herumspielst ? bzw kannst du das Anmeldefenster verchieben und siehst das auf beiden PCs ?
4. melde dich per VNC oder lokal an PC1 mit dem benutzer "user" an. erhälst du einen Desktop mit startmenü und allem was man so erwartet ?
5. melde dich von PC1 ab (logout) egal ob lokal oder per vnc. es erscheint auf der VNC-Client seite der schwarze bildschirm , ja ?
6. Was siehst du nun hingegen auf dem PC1 auf der lokalen grafischen Console ? wieder den Anmeldebildschirm ?
7. trenne auf PC2 die VNC verbindung (vnc viewer schließen) und starte die VNC verbindung neu. klappt das ohne fehlermeldung ? erscheint wieder nur der schwarze bildschirm ?
8. trenne de VNC verbindung von PC2 wieder.
9. melde dich an PC1 lokal an der grafischen console an mit dem benutzer user. alles noch ok auf dieser seite?
10. versuche jetzt nochmal von PC2 aus eine VNC sitzung zu starten. geht das wieder? oder immernoch schwarzer bildschirm?
>
> welchen vncserver verwendest du denn
gerade?
> und war dieser bei Fedora Core 8 Server
schon mit dabei oder hast du den
nachinstalliert?
>
Ich benutze XVnc, der schon bei der Fedora 8
Distri implementiert war.
> welchen vncserver verwendest du denn
gerade?
> und war dieser bei Fedora Core 8 Server
schon mit dabei oder hast du den
nachinstalliert?
>
Ich benutze XVnc, der schon bei der Fedora 8
Distri implementiert war.
ok.
ich vermute im augenblick folgendes problem:
- ich glaube dass deine server-kiste nicht als VNC-Terminalserver konfiguriert ist, sondern nur so das er immer nur auf den aktuellen localen bildschirm geschaltet werden soll. d.h. display 0:
nun..nach einem logout beenden sich üblicherweise alle X-Anwendungen und der displaymanager (xdm/kdm/gdm oder was auch immer) lässt den aktuellen X-Server sterben und starten diesen anschließend direkt wieder neu. auf der lokalen console erscheint nach einem kurzen flackern somit sofort wieder der anmeldebildschirm von xdm/kdm/gdm. aber... der vnc-server läuft im hintergrund vermutlich noch immer und wurde NICHT neu gestartet. die Verbindung zwischen VNC-Server und X-Server besteht inzw. jedoch nicht mehr. also schwarzer bildschirm.
ich schätze, sobald du auch den vnc-server neu gestartet hast kannst du dich wieder wie gewohnt darauf verbinden, stimmt das?
es besteht noch eine letzte möglichkein. alles was ich vermute oder gesagt habe ist bullshit denn ich habe davon überhaupt keine ahnung
![27688](/images/members/profile_male_48x48.png)
habe etwas recherchiert. demnach liege ich falsch mit typ 2. unter fedora scheint es noch einen typ 3 zu geben
nämlich fest vorkonfigurierte vnc-x-server. für jeden möglichen benutzer einen eigenen (virtuellen) x-server (VNC Server). in deinem fall wird auf port 5901 ein vnc-server (x-server) für den benutzer "user" gestartet, dessen konfigurationsdateien dann auch aus seinem home geladen werden. dieser server läuft unabhängig vom lokalen bildschirm display:0 und ist nicht mit diesem verbunden.
wir haben es also hier mit einem unabhängigen xserver zu tun. dieser wird bei dir an irgend einer stelle automatisch gestartet. z.b. beim booten der kiste. über die konfigurationsdateien unter /home/user steuerst du welche X-anwendungen mit dem server gleich mitgestartet werden sollen. darunter auch kde (startkde). soweit sogut.
aber nun kommt der punkt an dem du dich abmeldest. die anwendungen sterben, und auch der windowsmanager stirbt. zurück bleibt ein vnc-server (x-server) ohne inhalt.
normalerweise startet der display-manager den x-server neu wenn die session beendet wird. aber nur dann wenn der display-manager den xserver auch vorher selbst gestartet hatte.
hier stellt sich mir also die frage, wer hat den diesen xserver gestartet? ein eigenes startscript ? der kdm ?
warum wird der xserver nach der session nicht automatisch neu gestartet? danach solltest du mal suchen.
wir haben es also hier mit einem unabhängigen xserver zu tun. dieser wird bei dir an irgend einer stelle automatisch gestartet. z.b. beim booten der kiste. über die konfigurationsdateien unter /home/user steuerst du welche X-anwendungen mit dem server gleich mitgestartet werden sollen. darunter auch kde (startkde). soweit sogut.
aber nun kommt der punkt an dem du dich abmeldest. die anwendungen sterben, und auch der windowsmanager stirbt. zurück bleibt ein vnc-server (x-server) ohne inhalt.
normalerweise startet der display-manager den x-server neu wenn die session beendet wird. aber nur dann wenn der display-manager den xserver auch vorher selbst gestartet hatte.
hier stellt sich mir also die frage, wer hat den diesen xserver gestartet? ein eigenes startscript ? der kdm ?
warum wird der xserver nach der session nicht automatisch neu gestartet? danach solltest du mal suchen.
![27688](/images/members/profile_male_48x48.png)
Habe die xstartup-Datei extra noch editiert,
damit er mir den KDE-Desktop anstatt den
alten twm..
mit "startkde &"
damit er mir den KDE-Desktop anstatt den
alten twm..
mit "startkde &"
es ist noch nicht geklärt wer bzw was den xserver (vnc-server) bei dir startet.
mach mal ein
pstree -clnpuaA <<<<<<<< EDITED
und suche nach dem bzw den vnc servern. dort solltest du sehen was der vaterprozess ist. das könnte ein anhaltspunkt sein für die weitere suche. falls das einfügen hier im forum probleme macht kannst du z.b. http://pastebin.com/ verwenden und den link posten.
![27688](/images/members/profile_male_48x48.png)
ich habs befürchtet. versuche bitte nochmal "pstree -clnpuaA"
die ausgabe ist unbrauchbar. ggf. pastebin.com nutzen. dann sollte es lesbar sein.
die ausgabe ist unbrauchbar. ggf. pastebin.com nutzen. dann sollte es lesbar sein.
![27688](/images/members/profile_male_48x48.png)
zeile 141 |-Xvnc,14844,user :1 zeigt mir das dein VNC server irgendwo per init script und nicht vom GDM gestartet wird. d.h. weil er nicht von GDM gestartet wurde kann GDM diesen prozess auch nicht selbsttätig neu starten.
oder anders gesagt... in dieser konfiguration geht es ohne eigenes zutun nicht anders. d.h. du musst dir die startscripte deines xvnc mal durchsehen und schauen wo du eine "neustart" funktion einbauen kannst damit nach einem logout dein xvnc automatisch neu gestartet wird.
fazit: dieses phänomen ist also kein ungewollter Fehler sondern ein..wie Microsoft sich mir gegenüber schonmal ausgedrückt hat. Dies ist ein "Feature by Design". Eine nicht geplante/nicht umgesetzte Funktionalität.
Ich habe dazu Gestern noch kurz mit Tim Waugh über dein Problem gesprochen. Das is einer der Gurus bei RedHat. Er hat u.a. zwei Artikel zum Thema VNC auf RH Servern geschrieben und kennt sich damit ziemlich gut aus.
Nun rate mal was er gesagt hat....
Zitat in eigener Übersetzung:
"Warum logt er sich denn überhaupt aus?! Wenn du den VNC Service nutzen willst logge dich NICHT aus so lange du nicht den Dienst anschließend neustarten willst."
Original:
" Why does he log out? If you are using the VNC service, don't log out until you are going to
stop or restart the service."
Gemeint ist: Nur VNC Verbindung trennen, nicht ausloggen! dann kannst du immer wieder auf den desktop verbinden.
Das was du wolltest geht z.b. dann wenn du den VNC Server (X-Server) vom GDM starten lässt oder du eben dir selbst etwas strickst damit er nach dem logout den vnc server neu startet.
erstere version mit dem gdm hab ich bei mir unter debian 4 so aufgebaut.
viel erfolg bei der Suche/Anpassung des Startscriptes!
![27688](/images/members/profile_male_48x48.png)
Ich möchte eigentlich nicht, dass die
Session von dem user immer auf ist! Muss ja
nicht unbedingt sein!
Session von dem user immer auf ist! Muss ja
nicht unbedingt sein!
ich kann das nachvollziehen. Doch so wie RedHat das angedacht hat ist dies ohne zutun nicht möglich. die denken da wohl anders.
Also müsste ich doch jetzt das
xstartup-Script so verändern, dass er
das per GDM (Gnome Desktop Manager?? nicht
KDE??) ausführt oder?
gdm ist nur der display-manager von gnome. unter kde gibts das auch. heisst dann kdm. der is zuständig für das starten und verwalten deiner X-Server. normalerweise hat eine einfache linux box erst mal nur einen einzigen x-server. den lokalen für die grafische oberfläche. wenn man will kann man abrer kdm/gdm/xdm so konfigurieren das dieser mehrere xserver startet und verwaltet. z.b. mehrere grafikkarten oder mehrere virtuelle x-server wie z.B. einen vnc-server. das is aber ein anderes prinzip.
aber wenn du das RedHat prinzip beibehalten willst brauchst du das alles nicht. dann such lieber auf deiner kiste den punkt/das script das deinen xvnc server startet und schau nach ob du dort dafür sorgen kannst dass er anschließend automatisch neu startet. das is ganz unabhängig von gdm/kdm/xdm.
Dann muss ich erstmal ein bisschen
recherchieren!![face-wink face-wink](/images/icons/fa/light/face-laugh-wink.svg)
recherchieren!
auf jeden Fall von vorteil!
ich würd mal bei /etc/init.d/xvnc anfangen wenns das gibt.