Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Переподключение к сессии после рестарта сервиса xrdp  (Прочитано 20432 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн provadyuga

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Добрый день.
Установил на Ubuntu 20.04 server службу xrdp, командой
sudo apt install xorgxrdp xrdp

Рабочее окружение - cinnamon.

После перезапуска xrdp подключиться к серверу невозможно.
Выходит окно с запросом имени пользователя и пароля.
Ввожу имя пользователя и пароль, жму ОК и подключение слетает.

Перезагружаю сервер - и только после этого нормально заходу на сервер.

Кому приходилось сталкиваться с этой проблемой, подскажите как это исправить?

Оффлайн bezbo

  • Старожил
  • *
  • Сообщений: 1742
    • Просмотр профиля
как это исправить?

Цитировать
To solve this "second session" problem and allow as many sessions as you need, edit /etc/xrdp/startwm.sh and add these lines before the lines that test and execute Xsession. The $HOME/.profile is not part of the solution, but is something that should be run before starting the session anyway.
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
. $HOME/.profile

Оффлайн provadyuga

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
С этими строками в /etc/xrdp/startwm.sh
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
. $HOME/.profile
теперь уже при первом подключении  - черный экран.
« Последнее редактирование: 03 Июля 2022, 12:50:33 от provadyuga »

Оффлайн bezbo

  • Старожил
  • *
  • Сообщений: 1742
    • Просмотр профиля
cat /etc/xrdp/startwm.sh?

Оффлайн provadyuga

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
cat /etc/xrdp/startwm.sh
(Нажмите, чтобы показать/скрыть)

Строки
Цитировать
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
. $HOME/.profile
убрал.
« Последнее редактирование: 03 Июля 2022, 19:02:08 от provadyuga »

Оффлайн bezbo

  • Старожил
  • *
  • Сообщений: 1742
    • Просмотр профиля
#!/bin/sh
# xrdp X session start script (c) 2015, 2017 mirabilos
# published under The MirOS Licence

if test -r /etc/profile; then
   . /etc/profile
fi

unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR

if test -r /etc/default/locale; then
   . /etc/default/locale
   test -z "${LANG+x}" || export LANG
   test -z "${LANGUAGE+x}" || export LANGUAGE
   test -z "${LC_ADDRESS+x}" || export LC_ADDRESS
   test -z "${LC_ALL+x}" || export LC_ALL
   test -z "${LC_COLLATE+x}" || export LC_COLLATE
   test -z "${LC_CTYPE+x}" || export LC_CTYPE
   test -z "${LC_IDENTIFICATION+x}" || export LC_IDENTIFICATION
   test -z "${LC_MEASUREMENT+x}" || export LC_MEASUREMENT
   test -z "${LC_MESSAGES+x}" || export LC_MESSAGES
   test -z "${LC_MONETARY+x}" || export LC_MONETARY
   test -z "${LC_NAME+x}" || export LC_NAME
   test -z "${LC_NUMERIC+x}" || export LC_NUMERIC
   test -z "${LC_PAPER+x}" || export LC_PAPER
   test -z "${LC_TELEPHONE+x}" || export LC_TELEPHONE
   test -z "${LC_TIME+x}" || export LC_TIME
   test -z "${LOCPATH+x}" || export LOCPATH
fi

if test -r /etc/profile; then
   . /etc/profile
fi

test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession

sudo systemctl restart xrdp

Оффлайн provadyuga

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Добавил
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
Сделал рестарт xrdp - черный экран, перезагрузил сервер - черный экран.

Оффлайн bezbo

  • Старожил
  • *
  • Сообщений: 1742
    • Просмотр профиля
echo "cinnamon-session" > ~/.xsession

Оффлайн provadyuga

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
echo "cinnamon-session" > ~/.xsession
Без изменений. Черный экран.
В домашней папке появился файл .xsession со строкой cinnamon-session.

Вообще cinnamon на сервере (не по rdp) я запускаю командой startx.
Службу lightdm я остановил командой: sudo systemctl stop lightdm.
Так что при загрузке системы сначала просит login, password в командной строке.
После этого открывается командная строка. И с командной строки по startx запускается cinnamon.

Систему установил с официального диска ubuntu-20.04.4-live-server-amd64.
Затем установил cinnamon: sudo apt install cinnamon-desktop-environment
Службу lightdm остановил: sudo systemctl disable lightdm
 
По команде cinnamon-session запустить графику не удалось.

Попробывал startx. Система попросила установить xinit.
Установил xinit: sudo apt install xinit.
Потом установил apt install language-pack-ru language-pack-ru-base language-pack-gnome-ru language-pack-gnome-ru-base.
Проверил локаль в файле /etc/default/locale: LANG=ru_RU.UTF-8.

После этого по startx запустился cinnamon - все было по русски.
А так работаю в консоли без cinnamon или по rdp или по webmin.

Может нужно startx где-то прописать, чтобы по rdp все запускалось ?

Оффлайн ZevSua

  • Новичок
  • *
  • Сообщений: 39
    • Просмотр профиля
Я тож постоянно насилую себе мозг с этим RDP ))

echo "cinnamon-session" > ~/.xsession
xsession - это файл для конкретного пользователя. Тоесть каждому новому надо будет вписывать, что подгружать.

Общий файл отвечающий за RDP - /etc/xrdp/startwm.sh
Там если в конце пропишеш cinnamon-session - должно запустится. Если не запускается то пробуй другие . Их там запускателей несколько.

Сам же startx - дял запуска непосредственно на компе (а не через удаленку) это если версия устанавливалась Server - то по умолчанию раб стол на самом серваке не будет грузится. И вот если надо непосредственно получить раб.стол на серваке - то и запускают startx. Его добавлять не выгодно в /etc/xrdp/startwm потому что он много ресурсов жрет и лагае.

Строки -
test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession
собственно и должны запускать RDP-сессию. если ты чтото добавляеш меняеш типа как щас "cinnamon-session" - то эти 2 строки коментируй. Они мешают.

Вместо:
test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession

должно быть:
#test -x /etc/X11/Xsession && exec /etc/X11/Xsession
#exec /bin/sh /etc/X11/Xsession
cinnamon-session

Ну и тестируй. я нашел для себя XFCE (и на старых компах LXDE)

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28360
    • Просмотр профиля
Тоесть каждому новому
/etc/skel/.xsession
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.035 секунд. Запросов: 25.