- Графический интерфейс Linux на VDS
- Что такое графический интерфейс
- Как установить графический интерфейс
- Использование XFCE
- Как удалить XFCE
- VPS на Linux с графическим интерфейсом: запускаем сервер X2Go на Ubuntu 18.04
- Оглавление:
- Установка графического окружения
- Русификация сервера и установка ПО
- Установка сервера X2Go
- Подключение к рабочему столу
- Запуск приложения на удаленном компьютере
- Преимущества X2Go
- Методы удаленного доступа к Linux GUI
- Введение
- Установка GUI
- Удаленный доступ
- TeamViewer
Графический интерфейс Linux на VDS
Что такое графический интерфейс
Графический интерфейс (GUI) — оконный менеджер и приложения для работы с файлами и мультимедиа.
На серверах с ОС Windows рабочий стол доступен сразу после активации сервера. Чтобы подключиться к серверу используйте RDP.
Графический интерфейс Linux требует большого количества системных ресурсов. Поэтому мы не рекомендуем устанавливать GUI, если вы используете VDS для размещения веб-сайтов.
Также мы не устанавливаем GUI при активации сервера с ОС Linux, но вы можете сделать это самостоятельно.
Как установить графический интерфейс
Вы можете установить графический интерфейс на VDS с KVM виртуализацией и подключаться к серверу по VNC.
На OVZ виртуализации подключение по VNC отсутствует. По этой причине у OVZ возможно только подключение по ssh.
Установку также могут выполнить наши технические специалисты. Стоимость установки — 650 рублей.
Рекомендуем устанавливать рабочее окружение с небольшими требованиями. Для примера рассмотрим установку Xfce на Ubuntu.
Xfce требует 256 мегабайт оперативной памяти и 5 гигабайт дискового пространства. Перед установкой обязательно создайте резервную копию VDS.
Для установки XFCE в Debian/Ubuntu подключитесь к серверу по ssh и введите команды:
После установки перейдите в VMmanager. Для этого в личном кабинете откройте раздел Товары — Виртуальные серверы — выберите сервер и кликните Перейти .
В VMmanager перейдите раздел Управление — Виртуальные машины — VNC .
Если вы используете VMmanager 6, то нажмите на кнопку VNC во вкладке Виртуальные машины .
Использование XFCE
После перехода в VNC, авторизуйтесь и введите команду:
Важно отметить, что у виртуальных серверов видеокарта эмулируется программно встроенным графическим процессором. Графический интерфейс может работать медленно.
Чтобы выйти из GUI кликните правой кнопкой мыши и выберите пункт Applications — LogOut . В открывшемся окне повторно кликните Log Out . Сервер продолжит работать без графического интерфейса.
Как удалить XFCE
Для удаления Xfce в OC Debian/Ubuntu наберите команды:
Источник
VPS на Linux с графическим интерфейсом: запускаем сервер X2Go на Ubuntu 18.04
Настройку VNC и RDP на виртуальном сервере мы уже освоили, осталось изучить еще один вариант подключения к виртуальному рабочему столу Linux. Возможности созданного компанией NoMachine протокола NX достаточно интересны, к тому же он хорошо работает через медленные каналы. Фирменные серверные решения стоят дорого (клиентские бесплатны), но существует и свободная реализация, о которой пойдет речь в этой статье — система X2Go. Она отпочковалась от проекта с открытым исходным кодом FreeNX, когда NoMachine прекратила его поддерживать и отпустила в свободное плавание.
Оглавление:
Установка графического окружения
Для виртуального графического десктопа на Linux мощные машины не нужны, пока пользователь не начнет запускать прикладные программы. Для тестов мы возьмем крепкого середнячка с Ubuntu Server 18.04 LTS с двумя вычислительными ядрами, четырьмя гигабайтами оперативной памяти и жестким диском (HDD) на двадцать гигабайт. На RuVDS уже доступны образы Ubuntu Server 20.04 LTS, процесс настройки более свежей версии будет аналогичным. Не забывайте использовать промокод Habrahabr10 для получения скидки в 10% при заказе.
В качестве окружения рабочего стола снова берем XFCE из-за относительно невысоких требований к вычислительным ресурсам. К тому же с запуском этого DE через удаленный доступ в виртуальных средах не возникает проблем:
Русификация сервера и установка ПО
На следующем этапе стоит настроить локализацию и установить минимальный набор прикладных программ: браузер, почтовый клиент и офисный пакет. Сначала инсталлируем переводы для системных программ:
Того же эффекта можно достичь, отредактировав вручную файл /etc/default/locale.
Для локализации GNOME и KDE в репозитории есть пакеты language-pack-gnome-ru и language-pack-kde-ru — они понадобятся, если вы будете использовать программы из этих сред рабочего стола. В XFCE переводы устанавливаются вместе с приложениями. Дальше можно инсталлировать словари:
Кроме того, инсталляция переводов может потребоваться для некоторых прикладных программ:
Установка сервера X2Go
Стабильные версии сервера и клиента X2Go можно установить из внешнего репозитория PPA (Personal Packages Archive) на Launchpad или из штатных репозиториев актуальных релизов Ubuntu. Мы остановимся на втором варианте, поскольку версии софта в обоих источниках одинаковы, но если вам потребуются дополнительные пакеты, сторонний репозиторий придется подключить. Нам необходимо инсталлировать два пакета:
В случае если вы используете окружение MATE или LXDE, дополнительные пакеты потребуются (для XFCE они не нужны):
Вишенка на торте: X2Go работает через SSH и в дальнейшей настройке не нуждается. На VPS должен быть запущен sshd и открыт доступ к порту 22 в правилах межсетевого экрана. Поскольку речь идет про виртуальный сервер, это наверняка уже сделано из коробки. На физической машине открыть удаленный доступ по SSH несложно. Остается только проверить статус сервера X2Go:
Стоит также завести непривилегированного пользователя для работы с окружением рабочего стола:
Добавим пользователя в группу sudo, чтобы он мог решать связанные с администрированием задачи. Если такой потребности нет, этот шаг можно пропустить:
Подключение к рабочему столу
Клиентское ПО X2Go для Windows, Linux и OS X можно загрузить на сайте проекта. Клиент под Android находится в стадии разработки, а бесплатные мобильные приложения от NoMachine с сервером X2Go несовместимы. Если на локальном компьютере установлена Ubuntu, достаточно добавить пакет x2goclient:
Для сохранения видового разнообразия в этот раз мы возьмем клиент для Windows:
Здесь можно настроить параметры соединения, устройств ввода-вывода, а также мультимедийных устройств.
Если все сделано правильно, после подключения появится рабочий стол XFCE.
Запуск приложения на удаленном компьютере
Иногда вместо полноценного окружения рабочего стола на удаленном компьютере нужно запустить ресурсоемкое приложение (например, IDE). Сделать это несложно, достаточно указать в настройках соединения соответствующий тип сеанса и команду.
Браузер запущен на удаленном VPS с Ubuntu
Есть и более экзотические варианты использования X2Go: система позволяет, например, подключиться к сессии пользователя на удаленном компьютере (как в TeamViewer). В этом случае на обеих машинах должны быть установлены и клиентские, и серверные части. Кроме того, задавать профили сессий на каждом клиенте не обязательно: можно установить и настроить x2gobroker, чтобы определить их на сервере. Для этого придется подключить сторонний репозиторий с дополнительными пакетами.
Преимущества X2Go
В отличие от нуждающейся в высокой пропускной способности канала системы VNC, X2Go использует продвинутый протокол NX 3 для минимизации объема передаваемых данных. В системе есть собственный X-сервер, к тому же она практически не требует настроек и отличается продвинутыми возможностями. Мы рассказали только о самых основных, но X2Go умеет намного больше, включая трансляцию клиенту звука и видео с сервера, печать на локальном принтере (на VPS придется установить дополнительные пакеты для настройки виртуального принтера) и общие каталоги. Взаимодействие с сервером идет через надежный и проверенный временем sshd — пользователю доступны безопасные механизмы аутентификации, в т.ч. с ключами. X2Go автоматически настраивает среду при входе в систему (держать X-сервер постоянно запущенным не нужно), при этом поддерживается многопользовательская работа и большинство популярных окружений рабочего стола, а сеанс не убивается даже после разрыва соединения.
Источник
Методы удаленного доступа к Linux GUI
В службу технической поддержки RUVDS регулярно обращаются по поводу GUI и удаленного доступа к нему на виртуальных серверах с Linux, несмотря на то что в интернете достаточно много материалов освещающих эту проблему. Поэтому, для наших пользователей мы решили собрать всё по этой теме в одну статью.
Введение
На всякий случай возможно стоит упомянуть, что SSH — основной способ предоставления доступа к линуксовым виртуалкам на RUVDS. Большая часть действий описываемых в этой статье будет осуществляться именно таким образом.
Для подключения необходимо найти SSH-клиент для вашей операционной системы.
- OpenSSH; если Вы пользуетесь Linux, например Ubuntu, скорее всего всё уже установлено, до нас, так что можно смело писать в терминале: ssh root@[IP].
- PuTTY есть и для Linux, в том числе в официальных репозиториях Debian и Ubuntu.
MAC OS:
Установка GUI
Итак, перейдем к установке GUI. Сначала нужно поставить графическую подсистему:
Для Debian/Ubuntu:
Далее следует установка Desktop Environment (DE). Их существует великое множество. Мы рекомендуем ставить на сервер более легковесные среды, а еще лучше, не ставить вовсе. Первые две DE достаточно компактные, функциональные и «привычные».
1. Xfce
Для Debian/Ubuntu:
Можно поставить дополнительно:
Добавление русской раскладки:
Сочетание клавиш можно менять на свое усмотрение, например:
Чтобы эта команда запускалась каждый раз при запуске LXDE, нужно добавить в конец файла с помощью вашего любимого vi строку: @setxkbmap -option grp:switch,grp:ctrl_shift_toggle,grp_led:scroll us,ru. Или вот так…
Следующие две DE являются чрезвычайно легкими. Если уж GUI нужен на сервере, вероятно, стоит использовать именно их.
3. FluxBox
Для Debian/Ubuntu:
4. Openbox
Для Debian/Ubuntu:
Далее следуют наиболее популярные на десктопах графические оболочки.
5. Gnome
Для Ubuntu/Debian:
Замечание: с настройкой VNC-сервера под Gnome что-то пошло не так… Сервера из репозиториев tightvncserver и vnc4server так и не согласились сотрудничать, поэтому пришлось собрать пару deb-пакетов руками. Если у Вас не получится настроить сервер, то мы можем порекомендовать скачать собранный нами архив с tigervnc-server’ом и поставить его. Для этого:
7. Cinnamon
Для Debian/Ubuntu:
Если Вы хотите получать доступ к GUI через «Аварийный режим», то необходимо сделать следующее:
Мало того, необходимо обеспечить запуск графической оболочки при старте системы. Для этого можно установить какой-нибудь экранный менеджер (Display Manager, DM), например:
Или в случае с CentOS:
Если необходимости в доступе из личного кабинета нет, то следует выполнить:
Заметка: Ubuntu предлагает своим пользователям несколько метапакетов для более удобной установки нужной DE:
Далее, есть много способов получить удаленный доступ к GUI.
Удаленный доступ
На виртуальном сервере, в зависимости от OS нужно произвести следующие действия.
Далее, если вы используете Windows, подключаемся через встроенный RDP-клиент, Remote Desktop Connection (Подключение к удаленному рабочему столу).
Стандартный порт 3389. Для Linux есть масса клиентов которые можно установить из репозиториев: freerdp и remmina, gnome-rdp, vinagre и т.п.
Также можно пробросить RDP-шный трафик через SSH-туннель. Для этого нужно поправить конфигурационный файл xrdp:
В секцию [globals] нужно добавить строку: address=127.0.0.1
Проверить, что всё правильно, можно так:
Затем если вы используете cygwin или mingw, linux или mac os:
Запустите PuTTY. В древовидном меню слева Connection → SSH → Tunnels. Далее добавляем новый Forwarded Port (Source port: 3389, Destination: localhost:3389). Нажимаем Add.
Далее следуете в секцию Session. Вводите IP вашего сервера в поле Host Name (or IP address). Нажимаете кнопку Open, вводите пароль для подключения по SSH.
Далее для Windows:
- Можно использовать вышеупомянутый клиент: remmina
- Если в браузере хотите: novnc — HTML5 VNC client
- И ещё куча всяких разных: directvnc, gnome-rdp, krdc, xtightvncviewer, vinagre, xvnc4viewer
Для MAC OS:
OS X предоставляет для этого встроенное приложение Screen Sharing. Можно также использовать Safari
Сервер: На Вашей виртуальной машине установите VNC сервер:
Если на Вашей системе работает файрвол необходимо открыть соответствующие порты. Пример для CentOS
При возникновении проблем с отображением иконок и шрифтов при использовании xfce4 по Ubuntu/Debian:
Если вы хотите, чтобы VNC-сервер стартовал автоматически, создайте файл:
Со следующим содержимым:
Теперь можно подключиться, например, через UltraVNC. Для этого нужно запустить UltraVNC Viewer, в поле VNC Server записать [IP]::5901 (по-умолчанию: 5901, 5902 и т.п. для первого дисплея, второго и т.д. соответственно) и нажать на кнопку подключиться.
Также можно пустить vnc-шный трафик через ssh-туннель. Для этого отредактируйте:
Затем если вы используете cygwin или mingw, linux или mac os:
Если PuTTY:
Запустите PuTTY. В древовидном меню слева Connection → SSH → Tunnels. Далее добавляем новый Forwarded Port (Source port: 5901, Destination: localhost:5901). Нажимаем Add.
Далее следуете в секцию Session. Вводите IP вашего сервера в поле Host Name (or IP address). Нажимаете кнопку Open, вводите пароль для подключения по SSH.
Затем открываете UltraVNC Viewer и в поле VNC Server вводите: localhost::5901 после чего подключаетесь.
Также можете попробовать другие VNC-сервера:
x11vnc — фактически VNC-сервер (как vnc4server или tightvnc), но позволяет получать доступ к уже существующей X-сессии. Т.е. если Вы настроили графическую оболочку таким образом, что она запускается при старте системы, то можно использовать следующий вариант:
После подключения по VNC (на порт 5900) Вы должны увидеть тоже что и в «Аварийном режиме».
Для старта x11vnc при запуске OS необходимо проделать следующее:
Теперь немного поинтереснее. Одна замечательная компания NoMachine разработала отличный протокол NX на замену VNC. Клиенты для подключения по этому протоколу бесплатны, а официальное серверное ПО от NoMachine стоит много денег. В свое время, эта же компания поддерживала проект FreeNX работы на котором со временем затихли; текущая версия 0.7.2 от 2008-08-22. Но, к счастью, нашлись люди создавшие форк и назвавшие его x2go. К сожалению, x2go не совместим ни с NX от NoMachine, ни с freeNX. Так что клиент берем тут.
Установка сервера на Debian (источник):
Для примера поставим эту DE:
Далее следуем инструкциям с оффициального сайта:
Вывод следующей команды должен показать, что x2go готов к работе:
А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n» и заменить её на «tty -s && mesg n».
Следующая команда выведет путь до исполняемого файла startfluxbox, понадобится при настройке клиента:
Установка сервера на Ubuntu:
А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n || true» и заменить её на «tty -s && mesg n».
Установка сервера на CentOS:
Клиент для линукс ставится из вышеприведенных репозиториев следующей командой:
Для Windows — скачиваем, ставим, запускаем. По той же ссылке, приведенной выше, есть клиент для OS X.
В настройках сессии указываем: в поле Host — IP вашего сервера, в поле Login — root, порт оставляем как есть, session type — тот GUI который ставили.
Как вы можете видеть, есть возможность аутентификации по ключу. В общем много всякого. Посмотрите сами. И звук можно через PulseAudio выводить.
После нажатия Ok вы увидите вот такие вот очаровательные штучки, на которые нужно нажать для получения запроса на ввод пароля и подключения к выбранной сессии:
Замечание: обратите внимание, что в списке нет Вашего любимого FluxBox’а поэтому путь к нему приходится прописывать руками.
Важной возможностью x2go является возможность запуска любого графического приложения вообще без установки DE. Для этого в настройках сессии нужно в секции session type нужно выбрать пункт single application и выбрать выполняемое приложение или ввести путь к программе которую следует запустить.
В этом случае установка ПО на сервер будет выглядеть следующим образом. В случае с Ubuntu:
А теперь важный момент, подключиться без этого фикса не получится! Нужно найти в файле .profile строку «mesg n || true» и заменить её на «tty -s && mesg n».
И настроив сессию как показано ниже, можно будет запустить браузер на удаленном сервере, а на вашей машине откроется окно его отображающее:
Или так; тогда просто откроется окно терминала:
Ниже вы можете видеть скриншот окна статуса текущей сессии. Оранжевыми цифрами отмечены кнопки:
- «Suspend session» — после нажатия на эту кнопку соединение будет разорвано, но сессия останется и будет ожидать повторного подключения. Все запущенные вами на сервере приложения продолжат свою работу;
- «Terminate session» — после нажатия подключение к серверу будет разорвано, а запущенные вами на сервере приложения будут завершены.
TeamViewer
Последний способ удаленного доступа к рабочему столу.
Установка на Ubuntu:
Установка на Debian:
Установка на CentOS:
Также необходимо принять лицензионное соглашение TeamViewer’а, это можно сделать с помощью «Аварийного режима», либо добавить следующие строки в конец файла /opt/teamviewer/config/global.conf:
Следующая команда покажет состояние демона TeamViewer’а и необходимый для подключения девятизначный TeamViewer ID:
После запуска клиента скачанного тут, нужно ввести TeamViewer ID в поле Partner UD и нажать на кнопку «Connect to partner». Далее TeamViewer запросит пароль: [PASSWD].
Источник