LINUX.ORG.RU
ФорумAdmin

vnc работает до выхода или смены пользователя в gnome

 , ,


0

1

добрый день и с наступающим всех! помогите решить проблемку, теперь уже с удаленным подключением.. перепробовал уже несколько клиентов внс, но проблема у всех одна, при подключении вроде бы все нормально работает, но когда надо зайти под другим пользователем или заблокировать экран(например при нажатии на кнопку «сменить пользователя»), то внс перестает передавать картинку - замирает, и никак не реагирует на действия пользователя,

а при повторном запуске выдает: «XOpenDisplay failed (:0)», а подробнее:

[root@localhost ~]# x11vnc -q -usepw -display :0

The VNC desktop is:      localhost.localdomain:0
PORT=5900

# это был первый запуск (все отлично до нажатия "сменить пользователя")
# и теперь уже внс запустить не удается:

[root@localhost ~]# x11vnc -q -usepw -display :0
No protocol specified
No protocol specified

22/02/2013 15:05:20 ***************************************
22/02/2013 15:05:20 *** XOpenDisplay failed (:0)

*** x11vnc was unable to open the X DISPLAY: ":0", it cannot continue.
*** There may be "Xlib:" error messages above with details about the failure.

Some tips and guidelines:

** An X server (the one you wish to view) must be running before x11vnc is
   started: x11vnc does not start the X server.  (however, see the -create
   option if that is what you really want).

** You must use -display <disp>, -OR- set and export your $DISPLAY
   environment variable to refer to the display of the desired X server.
 - Usually the display is simply ":0" (in fact x11vnc uses this if you forget
   to specify it), but in some multi-user situations it could be ":1", ":2",
   or even ":137".  Ask your administrator or a guru if you are having
   difficulty determining what your X DISPLAY is.

** Next, you need to have sufficient permissions (Xauthority)
   to connect to the X DISPLAY.   Here are some Tips:

 - Often, you just need to run x11vnc as the user logged into the X session.
   So make sure to be that user when you type x11vnc.
 - Being root is usually not enough because the incorrect MIT-MAGIC-COOKIE
   file may be accessed.  The cookie file contains the secret key that
   allows x11vnc to connect to the desired X DISPLAY.
 - You can explicitly indicate which MIT-MAGIC-COOKIE file should be used
   by the -auth option, e.g.:
       x11vnc -auth /home/someuser/.Xauthority -display :0
       x11vnc -auth /tmp/.gdmzndVlR -display :0
   you must have read permission for the auth file.
   See also '-auth guess' and '-findauth' discussed below.

** If NO ONE is logged into an X session yet, but there is a greeter login
   program like "gdm", "kdm", "xdm", or "dtlogin" running, you will need
   to find and use the raw display manager MIT-MAGIC-COOKIE file.
   Some examples for various display managers:

     gdm:     -auth /var/gdm/:0.Xauth
              -auth /var/lib/gdm/:0.Xauth
     kdm:     -auth /var/lib/kdm/A:0-crWk72
              -auth /var/run/xauth/A:0-crWk72
     xdm:     -auth /var/lib/xdm/authdir/authfiles/A:0-XQvaJk
     dtlogin: -auth /var/dt/A:0-UgaaXa

   Sometimes the command "ps wwwwaux | grep auth" can reveal the file location.

   Starting with x11vnc 0.9.9 you can have it try to guess by using:

              -auth guess

   (see also the x11vnc -findauth option.)

   Only root will have read permission for the file, and so x11vnc must be run
   as root (or copy it).  The random characters in the filenames will of course
   change and the directory the cookie file resides in is system dependent.

See also: http://www.karlrunge.com/x11vnc/faq.html
в /var/log/x11.log тоже самое сообщение. а лечится это только ребутом и опять же до первого логаута или смены пользователя (( подскажите как это можно исправить? или из-за чего такое может происходить?



Последнее исправление: cetjs2 (всего исправлений: 1)

сейчас только заметил!, оказывается: после первого подключения: [root@localhost ~]# x11vnc -q -usepw -display :0

The VNC desktop is: localhost.localdomain:0 PORT=5900 и последующего нажатия на кноку «сменить пользователя» ничего с первым экраном не происходит, пользователь и дальше находится в системе.

и к дисплею 0 внс уже не может подключиться, но после этого можно подключиться к следующему дисплею: [root@localhost ~]# x11vnc -q -usepw -display :1

The VNC desktop is: localhost.localdomain:0 PORT=5900

появляется гномовский список выбора пользователей и возможность залогиниться уже под другим пользователем.. но при попытке залогиниться под прошлым юзером внс или экран зависает... подскажите что нить что можно сделать что бы исправить?

linuxoras
() автор топика

Ты лучше нам расскажи что за vnc-сервер ты запускаешь и каким образом.
Подозреваю что vnc-сервер, либо X-сервер на первом дисплее у тебя замораживается.

Если руками переключить дисплей на сервере (ctrl+alt+F7...12) то соединение восстанавливается?

Nao ★★★★★
()
 -forever

      Keep listening for more connections rather than exiting as soon as the first client(s) disconnect. Same as -many

      To  get  the  standard non-shared VNC behavior where when a new VNC client connects the existing VNC client is dropped use:  -nevershared -forever   This method can also be used to guard against hung TCP connections that do not go away.

truf
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.