vnc серый экран (16.04,ightvnc, xfce4): решено
Я использую VNC много лет, но я не знаю, почему это иногда случается. С новой машиной utuntu 16.04 я сначала попробовал использовать vino, она хорошо работает, но я решил, что она довольно медленная, поэтому я решил использовать quietvnc с оконным менеджером xfce4. Но я снова получаю этот "серый экран" (я испытал его раньше пару раз..).
Мой xstartup это:
#!/bin/sh
xrdb $HOME/.Xresources
xsetroot -solid grey
startxfce4 &
и файл журнала:
24/08/18 09:47:09 Xvnc version TightVNC-1.3.10
24/08/18 09:47:09 Copyright (C) 2000-2009 TightVNC Group
24/08/18 09:47:09 Copyright (C) 1999 AT&T Laboratories Cambridge
24/08/18 09:47:09 All Rights Reserved.
24/08/18 09:47:09 See http://www.tightvnc.com/ for information on TightVNC
24/08/18 09:47:09 Desktop name 'X' (kimchan:1)
24/08/18 09:47:09 Protocol versions supported: 3.3, 3.7, 3.8, 3.7t, 3.8t
24/08/18 09:47:09 Listening for VNC connections on TCP port 5901
Font directory '/usr/share/fonts/X11/75dpi/' not found - ignoring
Font directory '/usr/share/fonts/X11/100dpi/' not found - ignoring
/usr/bin/startxfce4: X server already running on display :1
Xlib: extension "RANDR" missing on display ":1".
xfce4-session: Another session manager is already running
24/08/18 09:48:08 Got connection from client 129.254.132.39
24/08/18 09:48:08 Using protocol version 3.8
24/08/18 09:48:12 Full-control authentication passed by 129.254.132.39
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 16
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 22
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 21
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 15
24/08/18 09:48:12 Using zlib encoding for client 129.254.132.39
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding -314
24/08/18 09:48:12 Enabling full-color cursor updates for client 129.254.132.39
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding -223
24/08/18 09:48:12 Pixel format for client 129.254.132.39:
24/08/18 09:48:12 32 bpp, depth 24, little endian
24/08/18 09:48:12 true colour: max r 255 g 255 b 255, shift r 16 g 8 b 0
24/08/18 09:48:12 no translation needed
24/08/18 09:48:12 Using raw encoding for client 129.254.132.39
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 22
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 21
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 16
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 15
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding -314
24/08/18 09:48:12 Enabling full-color cursor updates for client 129.254.132.39
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding -223
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 16
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 22
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 21
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding 15
24/08/18 09:48:12 Using zlib encoding for client 129.254.132.39
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding -314
24/08/18 09:48:12 Enabling full-color cursor updates for client 129.254.132.39
24/08/18 09:48:12 rfbProcessClientNormalMessage: ignoring unknown encoding -223
Что здесь не так? Является X server already running on display :1
а ошибка? и как же RANDR отсутствует на дисплее:1? и что это за многие ignoring unkonwn encoding
Сообщения? Помощь высоко ценится. Спасибо!
6 ответов
Я нашел https://bbs.archlinux.org/viewtopic.php?id=180965
и изменил мой xstartup на
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &
и это работает!
Рабочий конфиг для Gnome
#!/bin/sh
#
# Config requires following packages:
# gnome-panel nautilus gnome-terminal metacity
#
export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
gnome-session &
gnome-panel &
metacity &
gnome-terminal &
Ничего из вышеперечисленного не работало для меня. Я нашел предложение на https://wiki.archlinux.org/index.php/TigerVNC#Recommended_security_settings .
Попробуй это:
vncserver -geometry ... -depth 24
Следуя другому ответу, за который проголосовали, я просто сказал:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &
в моем
~/.vnc/xstartup
файл, и я смог подключиться локально. Дополнительно пришлось редактировать
/etc/vnc/conf
добавляя строку:
$localhost = "no";
чтобы позволить другим машинам в моей частной сети подключаться к серверу tigervnc (в отличие от только
localhost
клиентов).
Также убедитесь, что у вас установлен dbus-x11.
sudo apt-get install dbus-x11
Согласно packages.debian.org : этот пакет содержит утилиту dbus-launch, которая автоматически запускает одну сеансовую шину D-Bus для каждого дисплея X11 для каждого пользователя. Если также установлен пакет dbus-user-session, он имеет приоритет над этим пакетом.
su -l имя_пользователя -c "(экспорт DISPLAY=:5; dbus-launch --exit-with-session; vncserver -geometry 1792x899 -depth 24:5)"
Команда «dbus-launch --exit-with-session» устанавливает переменные dbus так, чтобы они были специфичны для пользователя, запускающего vncserver, в противном случае он может получить их откуда-то еще или вообще не установить.DBUS_SESSION_BUS_PID=31898DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1003/bus
Их необходимо установить правильно, иначе вы получите пустой экран или вам будет отказано в доступе. Например, DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1003/bus, где 1003 — идентификатор пользователя.