RHEL7 – Использование xrdp и получение разных локалей на разных серверах

Вопрос или проблема

и надеюсь, кто-то сможет мне помочь….. Я в отчаянии!!

КЛИЕНТСКИЙ ТЕРМИНАЛ: RHEL8

СЕРВЕРЫ: RHEL7.9 xrdp 0.9.21 tigerVNC

Сценарий:

  1. С клиентского терминала RHEL8 подключиться к SERVER_A через RDP.
  • Создается SSH-туннель на сервер, затем сессия xrdp запускается через этот туннель.

Все нормально, знаковая карта корректна при наборе текста в окне терминала, и пользователь доволен.

  1. С того же клиентского терминала RHEL8 подключиться к SERVER_B через RDP.
  • Создается SSH-туннель на сервер, затем сессия xrdp запускается через этот туннель.

На этом сервере все тоже выглядит нормально. Однако, при наборе текста в окне терминала вывод отображается как на клавиатуре США. SERVER_B является идентично построенным сервером. Я это говорю, но где-то должна быть разница.

На клиентском терминале параметры locale/setxkbmap установлены на gb. На обоих серверах locale/setxkbmap идентичны и также показывают gb. Я прошел через многие ini-файлы xrdp, все из которых выглядят идентичными.

Есть ли кто-то, кто сможет определить, в чем разница и где мне нужно искать, чтобы это установить.

Не желая усложнять ситуацию, у меня есть много клиентских терминалов, которые подключаются к тем же двум серверам. Пользовательский опыт одинаков независимо от используемого клиентского терминала — каждый из них работает нормально с SERVER_A, но имеет клавиатуру США при подключении к SERVER_B.

Снова подчеркиваю, что locale/setxkbmap идентичны на всех клиентских терминалах, а также на обоих серверах. Я пытался изменить настройки клавиатуры на SERVER_B, но она остается, по-видимому, с картой клавиатуры США. Я даже пробовал создать собственную карту клавиатуры, но это тоже не дало результата.

Может кто-нибудь помочь определить, в чем заключается проблема.

Спасибо за ваше время.

Ответ или решение

Конечно! Похоже, вы столкнулись с проблемой, связанной с локализацией и раскладкой клавиатуры при подключении к разным серверам RHEL7 через xrdp. Давайте подробно рассмотрим вашу ситуацию, чтобы попытаться выявить и устранить причину этой проблемы.

Теория

RHEL (Red Hat Enterprise Linux) — это популярная операционная система для серверов и рабочих станций, известная своей стабильностью и масштабируемостью. Однако, как и любая другая система, она может сталкиваться с общими проблемами конфигурации, такими как локализация и настройки клавиатуры. xrdp — это стандартное решение для удаленного доступа, которое позволяет подключаться к среде рабочего стола Linux через протокол RDP (протокол удаленного рабочего стола), изначально разработанный Microsoft.

Часто встречающейся проблемой при использовании xrdp является несоответствие раскладок клавиатуры между клиентом и сервером. Эта проблема может возникать по многим причинам, таким как разница в конфигурации xrdp, изменения настроек локали или неправильно настроенные сессии VNC.

Пример

В вашем случае, клиентскую машину, работающую на RHEL8, соединяют с двумя серверами, оба из которых используют RHEL7.9, xrdp 0.9.21 и tigerVNC. При подключении к SERVER_A через RDP всё работает нормально, но при подключении к SERVER_B наблюдается неправильная работа раскладки клавиатуры, которая по умолчанию переключается на US, даже если настройки setxkbmap и locale на всех машинах указаны как gb.

Этот пример показывает, что, несмотря на кажущуюся идентичность конфигураций двух серверов, где-то присутствует различие, создающее проблему. Также заметно, что данная проблема проявляется, независимо от того, какой клиент используется для подключения — следовательно, проблема сосредоточена именно на сервере SERVER_B.

Применение

Диагностика проблемы

  1. Настройки xrdp:

    • Проверьте и сравните конфигурационные файлы xrdp на обоих серверах, особенно файлы /etc/xrdp/xrdp.ini и /etc/xrdp/sesman.ini. Убедитесь, что в них нет специфических для SERVER_B настроек, которые могли бы влиять на поведение клавиатуры.
  2. Настройки VNC:

    • Поскольку xrdp часто использует VNC для управления сеансами, убедитесь, что конфигурации VNC подкопки на SERVER_A и SERVER_B идентичны. Например, проверьте файл конфигурации TigerVNC /etc/tigervnc/vncserver-config-defaults.
  3. Локали системы и языковые пакеты:

    • Перепроверьте установленные языковые пакеты и локали на обоих серверах, используя команды locale и localectl status. Убедитесь, что установки действительно одинаковы и нет проблем с установкой пакетов языка.
  4. setxkbmap и параметры клавиатуры:

    • Выполните setxkbmap -query на обоих серверах, чтобы убедиться, что раскладка и варианты идентичны. Если проблема сохраняется, попробуйте вручную установить раскладку с помощью setxkbmap gb.
  5. Логи xrdp и VNC:

    • Проверьте логи xrdp и VNC на наличие ошибок или предупреждений, которые могли бы указать на проблему. Логи можно найти в /var/log/xrdp.log и /var/log/messages.

Решение проблемы

Основываясь на приведенной информации, наиболее вероятно, что где-то в скрытых конфигурационных файлах или установке на SERVER_B есть различия. Если после проверки вышеуказанных аспектов проблема не решена, рассмотрите следующие сценарии:

  • Попробуйте полностью удалить и переустановить пакеты xrdp и TigerVNC на SERVER_B. Это поможет сбросить все возможные скрытые конфигурации или поврежденные файлы.

  • Рассмотрите возможность сравнения полного списка установленных пакетов на SERVER_A и SERVER_B с помощью команды rpm -qa, чтобы выявить любые аномалии или различия.

  • Проверьте скрипты или скрипты запуска, которые могут выполняться при старте сессии или при логине пользователя и могут влиять на конфигурацию среды.

Если никаких проблем не обнаружено, возможно, стоит обратиться к форумам или сообществам, поддерживающим RHEL, где другие пользователи могут помочь с конкретной проблемой, или обратиться за поддержкой к Red Hat, если у вас есть подписка поддержки.

Надеюсь, эти рекомендации помогут вам диагностировать и устранить проблему. Удачи!

Оцените материал
Добавить комментарий

Капча загружается...