Наконец мы добрались до новой статьи из серии «Будни техпода», где мы просим кого-то из специалистов поддержки рассказать о наиболее популярных кейсах, а также предложить то или иное решение для реализации поставленной задачи. В первой части мы рассмотрели вопрос проброса USB-накопителя на VDS-сервер. Во второй части мы попробовали развернуть чистый Android на виртуальном сервере Hyper-V. В этой статье мы поговорим о терминальном Linux, попробуем поднять на нём графическую оболочку, настроить RDP-соединение и установить базовое ПО, необходимое для комфортного взаимодействия с VDS. Не будем больше тянуть и передаём слово нашему специалисту поддержки.
Несмотря на популярность первых двух вопросов, они и рядом не стоят с вопросами про графический интерфейс на Linux. Очень много клиентов просто-напросто незнакомы с данной операционной системой и при заказе думают, что получат что-то аналогичное рабочему столу на Windows. Практически ежедневно встречаются вопросы вроде «Почему я не могу подключиться к серверу по RDP?», «Почему мой сервер не работает, а в аварийном режиме я вижу лишь чёрный экран?». Некоторые пользователи, кто знаком с этой системой, привыкли работать с её графической версией, и интересуются, предоставляем ли мы такие. Поэтому в данной статье хотелось бы рассмотреть установку графической оболочки и настройку системы для начала работы.
▍ Установка графической оболочки
Все основные настройки мы будем производить, подключившись к серверу по SSH. Для этого открываем командную строку (cmd) или терминал (в зависимости от вашей ОС) и вводим следующую команду:
- ssh root@IP-адрес вашего сервера
- пароль от сервера (во время ввода символы могут не отображаться — просто продолжаем вводить и жмём Enter).
В нашем случае root — это имя пользователя, по которому мы будем подключаться. Если вы заказываете сервер в нашей компании, то учётные данные для подключения вы сможете посмотреть во вкладке "Мои серверы" после авторизации на сайте.
После успешного подключения через SSH мы увидим примерно следующее:
Теперь можно приступить к установке графической оболочки. В этой статье мы не будем вдаваться в подробности по каждой вводимой нами команде (более подробно об этом рассказано в нашем справочнике), а лишь пошагово опишем действия, которые необходимо выполнить для установки интерфейса и подключению к нему по RDP (делая акцент лишь на самых важных моментах).
В качестве графической оболочки был выбран xfce4, т. к. он один из наименее требовательных к параметрам сервера и приемлемо работает даже на достаточно слабых серверах.
Для установки самой оболочки нам необходимо поочерёдно выполнить следующие команды:
sudo apt update
-
sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
(в момент выполнения команды может потребоваться ввести «Y» для подтверждения установки).
Далее в открывшемся окне выбираем вариант gdm3, предложенный нам по умолчанию.
Процесс установки может занять длительное время (в нашем случае это около 10 минут).
Теперь нам необходимо настроить RDP-подключение к серверу. Для этого мы будем использовать Xrdp. Поочерёдно вводим следующие команды:
sudo apt install xrdp xorgxrdp
sudo adduser xrdp ssl-cert
cd /etc/xrdp
sudo mv startwm.sh startwm.sh.bak
sudo nano startwm.sh
У нас открылся файл startwn.sh, в который необходимо внести сценарий для запуска XFCE. Вносим следующие изменения, сохраняем и выходим из файла:
#!/bin/sh
if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi
exec /usr/bin/startxfce4
Далее выполняем следующие команды:
sudo chmod 755 startwm.sh
sudo systemctl restart xrdp
sudo ufw allow 3389
Теперь нам необходимо создать специальную учётную запись, через которую мы будем осуществлять подключение по RDP. В нашем случае эта учётная запись будет под именем rdp-user. Выполняем следующие команды:
-
sudo adduser rdp-user
(система запросит новый пароль для этого пользователя, а также информацию о нём. Всё, кроме пароля, можно пропустить, нажав Enter. Заполняем и переходим далее) sudo usermod -aG sudo rdp-user
Готово. Графический интерфейс успешно настроен, и мы уже можем подключиться к серверу по RDP, но этого всё ещё недостаточно для полноценной работы. К сожалению, встроенные браузер и терминал не работают при подключении через RDP. Поэтому, прежде чем подключиться к серверу, мы произведём установку некоторого дополнительного ПО, а также некоторые настройки сервера (Устанавливать представленное ниже ПО вы можете по желанию, но я настоятельно рекомендую установить браузер и терминал).
▍ Настройка ПО на сервере
Теперь нам необходимо подключиться через SSH под пользователем, которого мы ранее создали, чтобы произвести настройку и установку ПО под него. Для этого вводим следующую команду:
su - имя нового пользователя
▍ Установка браузера на сервер
Первым делом скачаем и установим браузер. Здесь я приведу примеры установки браузеров Chrome и Firefox. Для установки Firefox вводим следующую команду:
sudo apt install firefox
В отличие от Firefox, для установки Chrome сначала нужно скачать установочный файл, а после запустить его. Для этого вводим следующие команды:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i --force-depends google-chrome-stable_current_amd64.deb
▍ Установка альтернативного терминала
По какой-то причине при подключении к серверу по RDP встроенный терминал не работает. Не уверен, особенность ли это конкретно нашего образа системы, или xrdp, но, посоветовавшись со специалистом, я пришёл к варианту установки альтернативной версии терминала. Мой выбор пал на терминал Guake. Для его установки вводим следующие команды:
sudo apt-get update
sudo apt-get install guake
Если во время установки возникнет ошибка, необходимо будет обновить список пакетов и затем установить те, что были повреждены. Для этого выполняем следующие команды:
sudo apt update --fix-missing
sudo apt install -f
После их выполнения возвращаемся к предыдущему шагу и производим установку терминала.
▍ Установка офисного ПО
Также помимо браузера и терминала для полноценной работы с документами на сервере необходимо офисное ПО. Наиболее популярным решением является Microsoft Office, но его лицензионная версия требует оплаты. Поэтому мы установим бесплатный аналог: WPS Office. Мы, конечно, можем использовать бесплатные облачные решения (например, Google Docs), но иногда это может быть не совсем удобным из-за необходимости выгрузки своих файлов в облако. Установка WPS Office потребует скачивание deb-пакета с официального сайта программы. Поэтому все последующие действия мы будем производить на сервере через RDP-соединение. Отключаемся от SSH-соединения и входим на сервер по RDP, указав в качестве пользователя rdp-user.
После подключения к серверу нам необходимо найти ранее установленные браузеры и терминал. Жмём на кнопку с изображением лупы (Application Finder) и с помощью поиска находим Firefox / Chrome и Guake. Для удобства можем перетянуть их на рабочий стол.
Открываем браузер, переходим по ссылке www.wps.com/ru-RU и скачиваем deb-пакет.
Далее открываем ранее скачанный терминал (первый запуск может занять некоторое время — после запуска иконка терминала будет отображаться в правом верхнем углу) и вводим следующие команды:
cd Downloads/
$ sudo dpkg -i wps-office_11.1.0.11664.XA_amd64.deb
Имя файла может отличаться и, как правило, зависит от версии, которую вы скачиваете с сайта.
После завершения установки ярлык WPS Office должен автоматически появиться на рабочем столе. Если этого не произошло, выполняем те же действия, что мы выполняли ранее для поиска браузера и терминала.
▍ Установка терминала МТ4
Кроме базового ПО, очень часто клиенты интересуются о возможности установки МТ4 на сервер с ОС Linux. Поэтому сразу хотелось бы сказать — да, это возможно, и делается это также в пару кликов. Для установки терминала вводим команду:
wget https://download.mql5.com/cdn/web/metaquotes.software.corp/mt4/mt4ubuntu.sh ; chmod +x mt4ubuntu.sh ; ./mt4ubuntu.sh
▍ Смена языка системы
Некоторым пользователям может быть некомфортно работать с системой на английском языке. Для включения русского языка необходимо подключиться через SSH к пользователю root и выполнить следующие команды:
apt-get install locales
dpkg-reconfigure locales
В открывшемся окне находим ru_RU.UTF-8 UTF-8, жмём пробел для выбора и Enter.
Далее выбираем ru_RU.UTF-8.
Затем перезагружаем сервер.
Теперь, после подключения к серверу через RDP, мы сможем увидеть, что основные элементы интерфейса переведены на русский.
Пара слов в заключение. Как мы смогли убедиться, настроить Linux-сервер для работы через RDP совсем несложно. К сожалению, при работе с системой будет присутствовать некоторая задержка в выполнении тех или иных действий, т. к. система в принципе плохо адаптирована для работы через протокол RDP, и тот же Windows ощущается куда шустрее, но если необходим именно Linux для работы, то можно смело использовать этот вариант.
Играй в нашу новую игру прямо в Telegram!
Комментарии (12)
aik
17.01.2023 12:57+1это возможно, и делается это также в пару кликов. Для установки терминала вводим команду:
wget download.mql5.com/cdn/web/metaquotes.software.corp/mt4/mt4ubuntu.sh; chmod +x mt4ubuntu.sh; ./mt4ubuntu.sh
По-моему, это «парой кликов» может только особо одарённый линуксоид назвать.Для включения русского языка необходимо подключиться через SSH к пользователю root и выполнить следующие команды:
А может просто конкретному пользователю русскую локаль выставить, а не в системе?
«Одной командой» — ещё можно. Но парок кликов — это когда в GUI выбрал и запустил. ;)13werwolf13
17.01.2023 19:43А может просто конкретному пользователю русскую локаль выставить, а не в системе?
а если планируется пара сотен юзверей и все с русской локалью? Можно конечно поправить шаблон для новых юзверей, но гораздо проще поменять на всю систему разом.
aik
17.01.2023 22:43А ещё восемьсот, допустим, английскую хотят. Или вообще китайскую.
Там же написано «некоторым пользователям» — это обычно подразумевает небольшую их часть.avacha
19.01.2023 10:23Это небольшая боль. Боль побольше обычно была, когда Linux хотели вместо сервера терминального использовать, но именно через RDP - и непременно, чтобы печать пробрасывалась!
garwall
17.01.2023 14:57+4выставлять любое rdp голым кое-чем в интернет - идея так себе. учитывая, что в том же xrdp нашли недавно баги с большими severity.
ZardoZAntony
18.01.2023 15:52Самое важное из-за чего невозможно было использовать RDP под линуксом вне корпоративной сети - принтеры не пробрасывались с компов пользователей. Не увидел тут инфы об этом. Все так же?
mihmig
19.01.2023 12:27Да фиг с ними. с принтерами - сейчас всё больше электронный документооборот идёт (мы же за "зелёных", да?)
Но вот неработающий буфер обмена и периодические косяки с переключением раскладки -да, хоронят всю идею замены Windows-сервера...
13werwolf13
за троганье руками файлов поставляемых пакетами нужно премии лишать.. НАВСЕГДА.
ну что за костылизм нуёмаё.......
oldadmin Автор
Привет!
Сразу оговорюсь, что серией статей «будни техпода» занимается наш сотрудник отдела технической поддержки. Возможно, он выбрал не самые оптимальные решения, но все они были опробованы им на практике, и в большинстве случаев, клиентам самых разных технических знаний они были наиболее понятны. Его целью при написании статьи было показать, что сервером под управлением ОС LInux, можно в принципе пользоваться привычным многим способом, подключаясь через RDP, и не нужно прилагать особых усилий для его настройки.
Вопросов в поддержку поступает действительно большое количество, и многим пользователям чужда работа с сервером через SSH, а терминал и вовсе пугает. Буду рад увидеть другие удачные решения в комментариях, которые наша поддержка смогла бы применить на практике.
mihmig
Подскажите - как правильно?