LTSP/xmodmap
Материал из ALT Linux Wiki
(Новая страница: «'''Имеются:''' тонкие клиенты ТОНК1202, AltLinux 5.0.1 Терминальный сервер.<br /> '''Проблема:''' при подкл...») |
м (+ссылки) |
||
(1 промежуточная версия не показана) | |||
Строка 1: | Строка 1: | ||
- | '''Имеются:''' тонкие клиенты ТОНК1202, | + | == Вводная == |
- | '''Проблема:''' при подключении через протокол XDMCP с тонкого клиента на терминальный сервер, нет возможности сменить раскладку клавиатуры с EN на RU. Т.е нет индикатора переключения раскладок и писать на русском вообще нельзя.<br /> | + | |
+ | '''Имеются:''' тонкие клиенты ТОНК1202, ALT Linux 5.0.1 Терминальный сервер.<br /> | ||
+ | '''Проблема:''' при подключении через протокол XDMCP с тонкого клиента на терминальный сервер, нет возможности сменить раскладку клавиатуры с EN на RU. Т.е. нет индикатора переключения раскладок и писать на русском вообще нельзя.<br /> | ||
'''Вероятная причина''' — отсутствие у аппаратного терминала поддержки русской UTF-8 кодировки.<br /> | '''Вероятная причина''' — отсутствие у аппаратного терминала поддержки русской UTF-8 кодировки.<br /> | ||
- | '''Пример решения''' — использование программы xmodmap. | + | '''Пример решения''' — использование программы {{cmd|xmodmap}}. |
- | + | ||
- | + | == Сборка == | |
- | + | # скачиваем архив с необходимой программой, например, [http://www.filewatcher.com/m/xruskb_1.15.3.orig.tar.gz.184083-0.html тут (список ссылок)] | |
- | { | + | # распаковываем:<br />{{cmd|tar zxf xruskb_1.15.3.orig.tar.gz}} |
- | + | # переходим в распакованную папку xrus-1.15.3:<br />{{cmd|cd xrus-1.15.3}} | |
- | + | # если начать установку сразу, в консоли будет выведена ошибка:<br /><tt>configure: error: You have to have X11 development package<br />(include files and libraries) to compile xruskb.</tt> | |
- | + | # загружаем и устанавливаем требуемый пакет:<br />{{cmd|apt-get update; apt-get install xorg-x11-devel}} | |
- | <br /> | + | # затем устанавливаем сам xruskb:<br />{{cmd|$ ./configure && make}}<br />{{cmd|# make install}} |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | < | + | |
- | + | ||
- | { | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | затем устанавливаем сам xruskb:<br /> | + | |
- | {| | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
Теперь программа должна нормально запускатьcя на сервере, проверяем работу (загружаем нужную нам кодировку):<br /> | Теперь программа должна нормально запускатьcя на сервере, проверяем работу (загружаем нужную нам кодировку):<br /> | ||
- | { | + | {{cmd|xmodmap /usr/local/share/xruskb/jcuken-cyr.xmm; xrus}} |
- | + | ||
- | + | Язык меняется нажатием ЛКМ на окошечке программы или комбинацией левого и правого шифта вместе. | |
- | + | ||
- | + | == Настройка == | |
- | Язык меняется нажатием ЛКМ на окошечке программы или комбинацией левого и правого шифта вместе. | + | Теперь при запуске программы на терминалках она будет очень долго открываться в сопровождении сильных тормозов системы... |
- | + | ||
- | Теперь | + | Для исправления этого потребуется [[Utf8/MigrateToKoi8|переехать с UTF-8 на koi8-r]]: |
- | Для исправления этого | + | # в /etc/sysconfig/consolefont:<br /><tt>SYSFONT=UniCyrExt_8x16<br />SYSFONTACM=koi8-r</tt> |
- | + | # в /etc/sysconfig/i18n:<br /><tt>LANG=ru_RU.KOI8-R</tt> | |
- | в /etc/sysconfig/consolefont<br /> | + | # в /etc/sysconfig/keyboard:<br /><tt>KEYTABLE=ruwin_cplk-KOI8-R<br />KBCHARSET=KOI8-R</tt> |
- | + | # в /etc/menu-methods/lang.h:<br /><tt>function lang()="ru_RU.KOI8-R"<br />function languages()="ru_RU.KOI8-R"</tt> | |
- | + | # можно еще сделать {{cmd|export LANG=ru_RU.KOI8-R}}; через запуск команды {{cmd|update-menus}} тормоза при запуске xrus на терминалках должны пропасть. | |
- | + | ||
- | + | Чтобы избавить пользователей от ручного запуска программы, создадим простой скрипт и поместим его в автозапуск. | |
- | < | + | |
- | в /etc/sysconfig/i18n<br /> | + | # создать скрипт {{path|ruseng.sh}} с содержимым:<br /><tt>#!/bin/sh<br />xrus jcuken-cyr.xmm</tt> |
- | + | # поместить {{path|ruseng.sh}} в папку {{path|/etc/profile.d}} | |
- | + | # поменять права на скрипт:<br />{{cmd|chmod +x /etc/profile.d/ruseng.sh}} | |
- | + | ||
- | + | После перезагрузки {{cmd|xrus}} будет стартовать сразу после входа пользователя. | |
- | < | + | |
- | в /etc/sysconfig/keyboard<br /> | + | == Применение == |
- | + | Стандартная комбинация переключения {{cmd|xrus}} — это левый и правый шифты вместе, поменять эту комбинацию можно так: | |
- | + | # зажимаем ПКМ<ref>это можно выполнить только на сервере, т.к. на тонких клиентах по какой-то причине менюшки не будут открываться</ref> на xrus -> properties -> switch key kombination -> Shift_L+Control_L -> Apply -> Ok | |
- | + | # файл {{path|/home/<Юзер, на котором поменяли настройки>/.xrus}} скопировать в домашнюю папку других юзеров для применения этих параметров переключения и у них. | |
- | + | ||
- | < | + | В центре управления системой русский язык клавиатуры не отключать, xrus перестанет работать. Чтобы xrus не путался с системным переключателем языков при работе на сервере, не используйте одинаковые комбинации смены раскладки. |
- | в /etc/menu-methods/lang.h<br /> | + | |
- | + | == Проблемы == | |
- | + | По каким-то причинам на ALT Linux 5.0.2 терминальном русский язык в терминале Konsole через xruskb ведет себя очень странно: при вводе более ~32 русских символов строка начинается сначала + либо начинают печататься какие-то азиатские символы или китайские иероглифы, либо просто те же русские символы печатаются поверх предыдущих. Эта проблема возникает и на сервере, и на тонких клиентах. | |
- | + | ||
- | + | В UXterm и текстовых редакторах работает нормально. | |
- | < | + | |
- | можно еще сделать export LANG | + | ''без xrus такая же проблема, так что это скорее баг 5.0.2'' |
- | через запуск команды update-menus | + | |
- | + | == Ссылки == | |
- | + | * http://forum.altlinux.org/index.php/topic,120.msg218812.html#msg218812 | |
- | создать скрипт ruseng.sh с содержимым:<br /> | + | * [[Utf8/MigrateToKoi8]] |
- | + | ||
- | + | == Примечания == | |
- | + | <references /> | |
- | + | ||
- | < | + | {{Category navigation|title=LTSP|category=LTSP|sortkey=*}} |
- | поместить ruseng.sh в папку /etc/profile.d | + | |
- | поменять права | + | |
- | { | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | После перезагрузки | + | |
- | Стандартная комбинация переключения | + | |
- | зажимаем ПКМ | + | |
- | + | ||
- | файл | + | |
- | В центре управления системой русский язык клавиатуры не отключать, xrus перестанет работать. Чтобы xrus не путался с системным переключателем языков при работе на сервере, не используйте одинаковые комбинации смены раскладки. | + | |
- | По каким-то причинам | + | |
- | В UXterm и текстовых редакторах работает нормально. | + | |
- | ''без xrus такая же проблема, так что | + |
Текущая версия на 15:45, 7 апреля 2014
Содержание |
Вводная
Имеются: тонкие клиенты ТОНК1202, ALT Linux 5.0.1 Терминальный сервер.
Проблема: при подключении через протокол XDMCP с тонкого клиента на терминальный сервер, нет возможности сменить раскладку клавиатуры с EN на RU. Т.е. нет индикатора переключения раскладок и писать на русском вообще нельзя.
Вероятная причина — отсутствие у аппаратного терминала поддержки русской UTF-8 кодировки.
Пример решения — использование программы xmodmap.
Сборка
- скачиваем архив с необходимой программой, например, тут (список ссылок)
- распаковываем:
tar zxf xruskb_1.15.3.orig.tar.gz - переходим в распакованную папку xrus-1.15.3:
cd xrus-1.15.3 - если начать установку сразу, в консоли будет выведена ошибка:
configure: error: You have to have X11 development package
(include files and libraries) to compile xruskb. - загружаем и устанавливаем требуемый пакет:
apt-get update; apt-get install xorg-x11-devel - затем устанавливаем сам xruskb:
$ ./configure && make
# make install
Теперь программа должна нормально запускатьcя на сервере, проверяем работу (загружаем нужную нам кодировку):
xmodmap /usr/local/share/xruskb/jcuken-cyr.xmm; xrus
Язык меняется нажатием ЛКМ на окошечке программы или комбинацией левого и правого шифта вместе.
Настройка
Теперь при запуске программы на терминалках она будет очень долго открываться в сопровождении сильных тормозов системы...
Для исправления этого потребуется переехать с UTF-8 на koi8-r:
- в /etc/sysconfig/consolefont:
SYSFONT=UniCyrExt_8x16
SYSFONTACM=koi8-r - в /etc/sysconfig/i18n:
LANG=ru_RU.KOI8-R - в /etc/sysconfig/keyboard:
KEYTABLE=ruwin_cplk-KOI8-R
KBCHARSET=KOI8-R - в /etc/menu-methods/lang.h:
function lang()="ru_RU.KOI8-R"
function languages()="ru_RU.KOI8-R" - можно еще сделать export LANG=ru_RU.KOI8-R; через запуск команды update-menus тормоза при запуске xrus на терминалках должны пропасть.
Чтобы избавить пользователей от ручного запуска программы, создадим простой скрипт и поместим его в автозапуск.
- создать скрипт ruseng.sh с содержимым:
#!/bin/sh
xrus jcuken-cyr.xmm - поместить ruseng.sh в папку /etc/profile.d
- поменять права на скрипт:
chmod +x /etc/profile.d/ruseng.sh
После перезагрузки xrus будет стартовать сразу после входа пользователя.
Применение
Стандартная комбинация переключения xrus — это левый и правый шифты вместе, поменять эту комбинацию можно так:
- зажимаем ПКМ[1] на xrus -> properties -> switch key kombination -> Shift_L+Control_L -> Apply -> Ok
- файл /home/<Юзер, на котором поменяли настройки>/.xrus скопировать в домашнюю папку других юзеров для применения этих параметров переключения и у них.
В центре управления системой русский язык клавиатуры не отключать, xrus перестанет работать. Чтобы xrus не путался с системным переключателем языков при работе на сервере, не используйте одинаковые комбинации смены раскладки.
Проблемы
По каким-то причинам на ALT Linux 5.0.2 терминальном русский язык в терминале Konsole через xruskb ведет себя очень странно: при вводе более ~32 русских символов строка начинается сначала + либо начинают печататься какие-то азиатские символы или китайские иероглифы, либо просто те же русские символы печатаются поверх предыдущих. Эта проблема возникает и на сервере, и на тонких клиентах.
В UXterm и текстовых редакторах работает нормально.
без xrus такая же проблема, так что это скорее баг 5.0.2
Ссылки
Примечания
- ↑ это можно выполнить только на сервере, т.к. на тонких клиентах по какой-то причине менюшки не будут открываться