Вопрос или проблема
Я установил xrdp на своем компьютере с Ubuntu 14.04, используя следующие команды. Теперь я могу легко подключаться к своему компьютеру с Ubuntu с удаленного рабочего стола на Windows.
Однако я заметил, что когда я закрываю соединение с удаленным рабочим столом и снова вхожу с теми же учетными данными, у меня начинается новая сессия. Я ожидал увидеть экран, на котором остановился. Есть ли что-то конкретное, что мне нужно сделать, чтобы сохранить сессию?
sudo apt-get install xrdp
sudo apt-get update
sudo apt-get install xfce4
echo xfce4-session >~/.xsession
sudo service xrdp restart
Есть пост на http://c-nergy.be/blog/?p=5305, который предлагает несколько вариантов, например:
отредактируйте файл /etc/xrdp/xrdp.ini
sudo gedit /etc/xrdp/xrdp.ini
Найдите раздел [xrdp1]
Замените следующую строку:
port=-1
На:
port=ask-1
Сохраните файл.
Перезапустите xrdp:
sudo service xrdp restart.
Когда вы входите, введите номер порта, например 1234, а затем каждый раз используйте тот же номер порта.
После обновления моего сервера 12.04 кажется, что Ubuntu 14.04 работает совсем иначе, чем 12.04 в отношении xrdp. В 12.04 существующая сессия всегда повторно подключалась перед попыткой начать новую. Это не так в 14.04, так как, похоже, для каждого соединения запускается новый процесс Xvnc при ‘port=-1’ в xrdp.ini. Возможно, повторная компиляция пакета xrdp может вернуть эту функциональность, но я предполагаю, что это, скорее всего, связано с systemd, который не позволяет пользователям запускать фоновые процессы после выхода.
Ответ или решение
Чтобы сохранить сеанс xrdp в Ubuntu 14.04, выполните следующие действия:
-
Установка необходимых пакетов:
Убедитесь, что xrdp и XFCE установлены правильно. Ваша команда для установки выглядит корректно, но приведу её для полноты:sudo apt-get update sudo apt-get install xrdp xfce4
-
Настройка сессии XFCE:
Убедитесь, что файлы конфигурации настроены на использование XFCE. Создайте или отредактируйте файл~/.xsession
следующим образом:echo xfce4-session > ~/.xsession
-
Настройка xrdp.ini для управления сеансами:
Вам необходимо изменить конфигурацию xrdp, чтобы он использовал существующие сеансы. Для этого откройте файл конфигурации xrdp:sudo gedit /etc/xrdp/xrdp.ini
Найдите секцию, которая начинает с
[xrdp1]
, и замените строку:port=-1
на
port=ask-1
Это позволит xrdp запрашивать порт при подключении, вместо того чтобы каждый раз создавать новый сеанс.
-
Перезапуск службы xrdp:
После внесения изменений, необходимо перезапустить xrdp:sudo service xrdp restart
-
Подключение к удаленному рабочему столу:
Теперь, когда вы подключаетесь к своему серверу через RDP-клиент, вам будет предложено ввести порт. Используйте тот же номер порта для последующих подключений, чтобы присоединиться к существующему сеансу. Например, вы можете использовать порт1234
каждый раз. -
Проверка сеансов:
Если у вас несколько пользователей, совместно использующих систему, убедитесь, что у каждого пользователя уникальные настройки и сессии, чтобы избежание возможных конфликтов. -
Возвращение к прежнему поведению Ubuntu 12.04 (опционально):
Если необходимо, вы можете рассмотреть возможность повторной компиляции пакета xrdp или использование альтернативных методов подключения с использованием других протоколов удаленного рабочего стола, таких как VNC, которые могут предоставить более стабильную работу с сеансами пользователей.
Эти шаги должны помочь вам сохранить ваши сеансы xrdp в Ubuntu 14.04. Если у вас возникнут дополнительные вопросы, не стесняйтесь спрашивать!