Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

13. Кириллизация дистрибутивов

В этом разделе кратко описываются способы настройки кириллицы, которые специфичны для различных дистрибутивов Unix. Способы разнятся не только от дистрибутива к дистрибутиву, но и от версии дистрибутива.

Для настройки кириллицы прежде всего полезно прочитать разделы Настройка текстовой моды, Настройка X Window, и только после этого, зная, что вы делаете, обратиться к подразделам этого параграфа.

13.1 Suse

Настройка текстового режима

Пример русификации консоли koi8. Проверено для версии 6.3

Запустите программу конфигурации и администрирования yast под суперпользователем.

Для выбора консольного шрифта в меню "System administration" следует выбрать пункт "Set the console font". Я рекомендую выбрать какой-либо шрифт из серии "Cyr_a8x" (у меня стоит шрифт Cyr_a8x16.pcfu.gz) -- сделайте этот шрифт "As standart font".

Далее в меню "System administration" выберете пункт "Change configuration file". Среди предложенных для изменения переменных нас интересуют:

CONSOLE_FONT -- консольный шрифт (как поменять эту переменную, было описано ранее; можно менять ее и здесь),

CONSOLE_SCREENMAP -- установите переменную равной koi2alt,

CONSOLE_MAGIC -- установить равной "(K"  (кавычки не писать),

KEYTABLE -- рекомендую установить равной ru3.map.gz (переключатель правый Alt, раскладка стандартная), или ru4.map.gz (переключатель CapsLock, раскладка для Windows клавиатуры),

CONSOLE_UNICODEMAP -- cyralt.uni,

RC_LANG -- можно установить равной ru_RU.KOI8-R.

Все это можно сделать, подредактировав файл rc.local в /etc/.

P.S. Если при установке указать, что ваш язык -- "русский"  (LANGUAGE=russian), то все настроится автоматически (ну, почти).

X window

Делайте так же, как описано в разделе X Window - настройка ничем от стандартной настройки не отличается.

13.2 Linux RedHat 5.2

Настройка текстовой моды

Из чего же сделана русификация в RedHat? Как известно, в Linux существуют два конкурирующих пакета управления шрифтами и клавиатурой: kbd и consoletools. В RedHat 5.x для русификации консоли применялся пакет kbd. В RedHat 6.x применяется уже другой пакет -- consoletools. Разницы между ними радикальной нет, но это, увы, делает несовместимым пакет initscripts для версий RedHat 5.x и 6.x.

Русификация (и вообще включение национальных установок) в Linux RedHat 5.2 осуществляется из пакета initscripts. Не будем вдаваться в подробности работы SYSV init, опишем краткий путь. Предполагается, что читатель данного текста умеет пользоваться пакетом RPM, который весьма важен в RedHat.

Клавиатура

Клавиатура в RedHat 5.2 на нижнем уровне управляется утилитой loadkeys из пакета kbd-096a-8. Пакет стандартный, RedHat лишь добавил туда несколько новых раскладок.

Запускается loadkeys из /etc/rc.d/init.d/keytable, управляющий файл /etc/sysconfig/keyboard. Там прописывается единственная переменная KEYTABLE:


 /etc/sysconfig/keyboard:
 ============
 KEYTABLE=ru1
 ============

Есть интерактивная утилита смены раскладки: kbdconfig, которая на самом деле лишь прописывает значение в /etc/sysconfig/keyboard.

Файлы клавиатурных раскладок лежат в /usr/lib/kbd/keymaps/.

Мне нравится раскладка ru_win_ctrl.map.gz от IP Labs. Переключение по правому Ctrl, точка и запятая в русском регистре, как в Windows, т.е. рядом с правой кнопкой Shift. (На моей клавиатуре нарисовано именно так). Надо положить этот файл в /usr/lib/kbd/keymaps/i386/quwerty/, запустить kbdconfig и выбрать ru_win_ctrl. (Хотя и родная раскладка ru1 тоже ничего -- точка и запятая на Shift 6, Shift 7).

Включить новую раскладку на ходу можно, запустив /etc/rc.d/init.d/keytable start

Консоль

Консоль в RedHat 5.2 на нижнем уровне управляется утилитами setfont и mapscrn из пакета kbd-096a-8.

Все, что необходимо сделать, это выполнить следующие команды:

   $ setfont Cyr_a8x16
   $ mapscrn koi2alt

Кроме того, необходимо переключить Charset G1 на вновь загруженный шрифт. Для этого нужно на все виртуальные консоли /dev/vty* вывести "магическую"  последовательность ESC (K.

   $ echo -ne "\033(K"

К сожалению, с русификацией консоли в RedHat не все так прозрачно, как с клавиатурой. Отдельной "подсистемы"  для управления консолью нет. А если делать все по-RedHat'овски, то возникают проблемы.

RedHat рекомендует использовать "новый"  формат, с UNICODE таблицей:

    $ setfont Cyr_a8x16 -u koi8

К сожалению, на "новом"  формате сползают рамки в mc и других программах. В RedHat 6 применяется другой пакет: consoletools, и другая версия initscripts, там все сделано немного по-другому.

Но попробуем выкрутиться! ;-)

Все утилиты запускаются из файла /sbin/setsysfont (на самом деле это shell-скрипт), параметры для которого живут в /etc/sysconfig/i18n. Не очень понятно, каково отношение между i18n и шрифтами, но тем не менее это так.


  /etc/sysconfig/i18n
  =====
  SYSFONT=
  UNIMAP=
  =====

Не очень понятно, откуда посылать ESC (K. Можно посылать его, например, из ~.profile

X window

Делайте так же, как описано в разделе X Window -- настройка ничем от стандартной настройки не отличается.

13.3 Debian

Этот раздел посвящен кириллизации Debian 2.2. Если какие-либо действия надо совершить для младших версий этого дистрибутива -- это будет отмечено особо.

Настройка русской локали

В файле /etc/environment исправьте LANG=C на LANG=ru_RU.KOI8-R. Если вы хотите, чтобы у root были русские сообщения и он мог вводить русские буквы в X Window, сделайте тоже самое в /root/.bashrc.

Если версия вашего дистрибутива меньше 2.2, то дополнительно выполните команду

      # mv /usr/share/locale/ru_SU /usr/share/locale/ru_RU.KOI8-R
с привилегиями пользователя root.

Зачем же мы удаляем ru_SU и делаем локаль с таким большим именем? Все потому, что SU -- это сокращение страны Судан, а эта локаль предназначена для людей из России, говорящих по-русски. Можно было бы оставить ru_RU, скажите вы. Но ru_RU уже существует, это локаль с кодировкой ISO-8859-5. Поэтому следует поставить ru_RU.KOI8-R.

Русификация текстового режима.

Если в системе все еще инсталлирован пакет kbd, то замените его на console-tools. Вставьте в /etc/console-tools/config:

SCREEN_FONT=Cyr_a8x16
APP_CHARSET_MAP=koi2alt.trans

Выполните команду

cp /usr/share/keymaps/i386/qwerty/ru1.map.gz /etc/console-tools/default.map.gz

с привилегиями пользователя root.

Первый вопрос, который возникает -- зачем грузить какой-то APP_CHARSET_MAP? Действительно, если загрузить шрифт KOI8-R, то можно будет не грузить карту перекодировки (APP_CHARSET_MAP). В этом случае вместо символов псевдографики будут появляться русские буквы 'Д', а иногда даже 'YO'. Чтобы побороть это, можно сделать свой тип терминала (в debian есть linux-koi8). Но гораздо проще и грамотнее поставить cp866 шрифты и включить таблицу перекодировки. Последний шаг -- копирование карты клавиатуры. ru1 рассчитана на 102-кнопочную клавиатуру без MicroSoft'овских клавиш.

Если версия вашего дистрибутива меньше 2.2, то вместо console-tools вам придется воспользоваться пакетом kbd -- в этом случае настройки будут следующие:

Вставьте в /etc/kbd/config:

      CONSOLE_FONT=Cyr_a8x16
      CONSOLE_MAP=koi2alt.

Выполните команду

      # cp /usr/share/keymaps/i386/qwerty/ru1.map.gz /etc/default.map.gz

с привилегиями пользователя root.

Русификация X Window System

Установите пакет xfonts-cyrillic со второго CD. Затем выполните команду

     # ln /usr/X11R6/lib/X11/fonts/cyrillic /usr/X11R6/lib/X11/fonts/local

Теперь загрузите XF86Setup и скажите, что хотите Russian клавиатуру. Если вы не хотите пользоваться xdm, то в /etc/inittab измените id:2:initdefault: на id:1:initdefault:. Иначе, вам надо будет вставить строчку

      . /etc/environment
      export LANG

в начале инициализационного сценария xdm (/etc/init.d/xdm). Затем в файле /etc/X11/xdm/xdm-config в конце вставьте строчку

      DisplayManager.exportList:      LANG

Зачем создавать символическую ссылку на /usr/X11R6/lib/X11/fonts/cyrillic? Дело в том, что XF86Setup, если видит каталог /usr/X11R6/lib/X11/fonts/local, то ставит его на первое место в секции "Files"  файла /etc/X11/XF86Config.

Зачем делать такие сложные выкрутасы с xdm? Чтобы xdm воспринял русскую локаль.

13.4 Slackware 7

Этот раздел является сильно сокращенной версией (только кириллизация) Slackware-7-INSTALL-RUS.HOWTO (с) 1999 Вячеслава Калошина (multik@sw.ru, multik@istu.edu)

Русификация текстового режима.

Для кириллизации следует выполнить следующие действия.

  • Переименовать файл /etc/rc.d/rc.font.sample в rc.font и добавить следующее содержание:
    setfont Cyr_a8x16
    mapscrn koi2alt
    for n in 1 2 3 4 5 6; do
     echo -ne "\033(K" > /dev/tty$n
    done
    loadkeys ru.map
    

    таким образом, появятся русские буквы в консоли. Шрифты переключаются правым Ctrl.
  • Положить файл .inputrc следующего содержания в каталог /etc/skel:
    $if Bash
            set convert-meta off
            set output-meta on
            set input-meta on
            set show-all-if-ambiguous on
            "\e[1~" beginning-of-line
            "\e[2~" " "
            "\e[3~" delete-char
            "\e[4~" end-of-line
            "\e[C" forward-char
            "\e[D" backward-char
            "\e[A" previous-history
            "\e[B" next-history
            "\e[21~": "exit\C-m"        # F10 - Exit from shell
    $endif
    

    здесь на F10 "повешана"  команда exit.
  • В /etc/profile следует добавить:
    export LANG=ru_RU.KOI8-R
    export NLSPATH=/usr/share/locale/ru_RU/
    export LESSCHARSET=koi8-r
    
  • При этом надо положить русскую локаль (ее можно взять в других дистрибутивах, или скачать и развернуть отсюда) в /usr/share/locale/ru_RU/.
  • от root'а выполнить следующие команды:
    cd /usr/share/locale
    
    localedef -c -f /usr/share/i18n/charmaps/KOI8-R -i \\
    /usr/share/i18n/locales/ru_RU \\
    ru_RU.KOI8-R
    
    ln -s ru_RU.koi8r ru_RU.KOI8-R
    
    символами \\ обозначено продолжение строки -- эти строчки надо вводить в одну строку.
  • в том же каталоге следует поправить файл locale.alias -- добавить строчку:
    ru ru_RU.KOI8-R
    

Все, Slackware на нижнем уровне русифицирована.

Русификация X Window System

Делайте так же, как описано в разделе X Window -- настройка ничем от стандартной настройки не отличается.

Но можно поступить, как советует Вячеслав Калошин (хотя этот способ не очень-то и правильный, но тоже работает):

Скопируйте файл .Xmodmap в свой домашний каталог. Этот файл обеспечит ввод русских букв по правой кнопке Alt.

Проверьте в /etc/XF86Config секцию "Keyboard", добавьте туда строчку XkbDisable, иначе вышеприведенный способ русификации не будет работать.


Вперед Назад Содержание
Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...