Вопрос или проблема
Я пытаюсь настроить AWS EC2 экземпляр на Debian 9 используя этот образ.
Образ работает, и я могу подключиться через VNC с использованием ‘tightvncserver’. Моя проблема точно такая же, как описана в этом вопросе на Ubuntu Stack Exchange. Я не могу добиться, чтобы рабочий стол Gnome отображался ‘хорошо’, как это происходит на сайте Gnome.
Как и в случае с Ubuntu вопросом, когда я открываю VNC соединение, я вижу серый фон, простую строку меню и изначально отсутствие опции терминала, пока я не создал пункт меню для него следуя этому вопросу.
Мой /home/username/.vnc/xstartup
выглядит следующим образом:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
vncconfig -iconic &
xrdb $HOME/.Xresources
xsetroot -solid grey
#x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#x-window-manager &
# Fix to make GNOME work
export XKL_XMODMAP_DISABLE=1
/etc/X11/Xsession
gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
Вопрос на Ubuntu Stack Exchange очень похож на мой; Как правильно настроить Gnome с VNC, чтобы отобразить симпатичный рабочий стол Gnome, как на сайте Gnome?
Примечание: Я не хочу использовать такие приложения, как TeamViewer, однако другие варианты, работающие только с терминалом, приветствуются, так как мне нужно иметь возможность использовать терминал на одном компьютере для открытия GUI экземпляра EC2, без установки программного обеспечения.
Я думаю, что приложение x11vnc может быть проще, так как вместо создания нового рабочего стола оно позволит получить доступ к существующему консольному рабочему столу.
Ответ или решение
Настройка полноценного рабочего стола Gnome на Debian с помощью VNC на AWS EC2 может показаться непростой задачей, особенно для пользователей, впервые сталкивающихся с этой системой. В этой статье мы рассмотрим, как правильно настроить Gnome и VNC для отображения полноценного рабочего стола, используя вашу конфигурацию.
Теория
Во-первых, важно понять, что VNC (Virtual Network Computing) — это система для удаленного доступа, которая позволяет вам получать доступ к графической среде Linux через сеть. Обычно это требует установки VNC-сервера на хост-машине и VNC-клиента на локальной машине.
В вашем конкретном случае используется tightvncserver
, который является популярным микро-VNC-сервером, но конфигурация xstartup в данном случае не полностью совместима с Gnome. Gnome — это одна из популярных сред рабочего стола для Linux, однако, по умолчанию он не всегда идеально взаимодействует с VNC серверами. Часто для совершенной их интеграции требуются дополнительные настройки.
Пример
Ваша текущая конфигурация .vnc/xstartup
смешивает команды от XFCE и GNOME, что может привести к конфликтам и некорректному отображению. Важно настроить xstartup
таким образом, чтобы корректно запускать элементы GNOME. Вот пример того, как можно изменить ваш файл xstartup:
#!/bin/sh
# Разрегистрация текущих сессий
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
# Запуск GNOME
export XKL_XMODMAP_DISABLE=1
gnome-session &
# Параметры для VNC
vncconfig -iconic &
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xrdb $HOME/.Xresources
Применение
-
Установите необходимые пакеты: Если у вас еще не установлены необходимые компоненты GNOME, вам необходимо их установить:
sudo apt-get update sudo apt-get install gnome-core gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal
-
Настройка VNC-сервера:
Убедитесь, что вы остановили свой VNC сервер перед тем как вносить изменения:
vncserver -kill :1
После обновите файл
.vnc/xstartup
, как указано выше, и запустите VNC сервер снова:vncserver :1
-
Использование x11vnc:
Иногда использование x11vnc может быть более подходящим, если вы желаете подключиться к текущей сессии рабочего стола, а не запустить новую VNC сессию. Это будет полезно, если настольный менеджер уже работает на вашей машине:
sudo apt-get install x11vnc x11vnc -display :0 -forever -loop -noxdamage -repeat -rfbauth ~/.vnc/passwd -rfbport 5900 -shared
-
Тестирование:
Подключитесь к вашему серверу с использованием клиента VNC, убедитесь в корректной работе Gnome. При использовании x11vnc, подключение может быть сделано напрямую к открытому дисплею.
Заключение
Настройка GNOME и VNC для дебагинской среды на AWS EC2 может показаться сложной, но следуя данной инструкции, вы сможете достичь полноценного рабочего стола, как показано на сайте GNOME. При этом, главное — внимание к мелочам в настройках и понимание взаимодействия между различными частями системы, что позволит вам использовать преимущество графического интерфейса на удаленной машине без установки дополнительных программ на вашей локальной машине.
Этот процесс требует терпения и понимания того, как работают различные части DE (Desktop Environment) на системе Linux. В дальнейшем, такие навыки помогут вам не только в настройке удаленного доступа, но и в других аспектах администрирования систем под управлением Linux.