Я обновил один из наших серверов до Ubuntu 11.10. Ранее мы использовали CentOS 6.1. При использовании CentOS я смог подключиться к нему с помощью VNC Viewer из Windows 7 Machines. Но после установки Ubuntu 11.10, когда я подключаюсь, я могу подключиться и просмотреть рабочий стол, но на рабочем столе ничего нет. Никаких меню или гаджетов не видно. Если я пытаюсь вызвать какой-нибудь графический интерфейс, например gedit
, он выдает ошибку
Xlib: extension "RANDR" missing on display ":0"
. Когда я нажал клавишу d
на клавиатуре, она свернула окно терминала. Я не могу понять, что происходит. Есть ли какое-то решение для этого?
CentOS
использует TigerVNC, но Ubuntu
использует TightVNC
(я думаю - может быть UltraVNC), вы можете попробовать эти предоставленные пакеты TigerVNC для Ubuntu. Важное примечание: это не обеспечит модуль vnc.so, который позволяет вам скрывать реальный дисплей, только Xvnc (вы не указали, как настроить VNC на сервере). Если вы хотите vnc.so, не устанавливайте эти пакеты.
Что касается клиента, это машина с Windows 7? (тег «windows7» в вопросе?) Если это так, попробуйте официальный клиент TigerVNC , так как он с большей вероятностью будет правильно работать с сервером TigerVNC в CentOS.
Предупреждение RANDR
можно смело игнорировать.
Я публикую это, потому что я потратил много времени, пытаясь сделать несколько вещей, чтобы запустить vnc4server и перейти на систему Ubuntu 11.10. Большинство людей предлагают использовать x11vnc, который работает из коробки, но не поддерживает нескольких пользователей.
vnc4server великолепен и наконец-то запущен!
Вот шаги:
Установите vnc4server
sudo apt-get install vnc4server
Установить gdm
sudo apt-get install gdm
sudo apt-get install gnome-panel
Когда вас попросят выбрать менеджер сеансов по умолчанию, выберите lightdm
При первом запуске vnc4server вам будет предложено чтобы установить пароль, и /home/<user>/.vnc/xstartup
будет создан для вас. Нам нужно изменить содержимое xstartup, чтобы все работало правильно.
Содержание должно выглядеть следующим образом:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
#exec /etc/X11/xinit/xinitrc
#. /etc/X11/xinit/xinitrc
gnome-session --session=gnome-classic &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
Что изменилось, и важно следующее:
unset SESSION_MANAGER
: избавляется от любых ошибок, таких как «Could» не получить имя на шине сеанса " /usr/share/gnome-session/sessions
будет иметь кучу файлов .session. Вы можете использовать любой из них в вашем файле xstartup. Например:
gnome-session –session=gnome-classic &
дает вашему классическому гному gnome-session –session=ubuntu-2d &
дает вам Unity gnome-session –session=ubuntu &
не работает! gnome-session &
не будет работать, потому что сеанс по умолчанию «ubuntu»