Материал из Wiki.X-news.org
Перейти к: навигация, поиск

Русификация FreeBSD, Gnome2

   FreeBSD 7.2 для работы в консоли способна использовать только однобайтную кодировку символов. Тоесть для того чтобы иметь возможность видеть русские символы в текстовой консоли нам придется использовать кодировку KOI8-R. Полноценная поддержка UTF8 в консоли обещается в FreeBSD 8.0, которая на момент написания статьи еще на стадии бета тестирования, поэтому будем использовать что есть. :)
   Собственно русифицировать консоль можно на стадии установки системы (или после установки) через sysinstall, но это не дает никакого понимания "как это устроено". Поэтому мы пройдем все шаги руссификации вручную, исправляя файлы /etc/rc.conf и /etc/ttys, а так же нам придется менять локаль пользователю системы.
   Для начала мы изменим тип терминала с стандартного cons25 на cons25r. Залогинившись в качестве root используем редактор ee и исправляем /etc/ttys следующим образом:
# ee /etc/ttys
   Находим в файле следующие строки:
ttyv0   "/usr/libexec/getty Pc"         cons25  on  secure
# Virtual terminals
ttyv1   "/usr/libexec/getty Pc"         cons25  on  secure
ttyv2   "/usr/libexec/getty Pc"         cons25  on  secure
ttyv3   "/usr/libexec/getty Pc"         cons25  on  secure
ttyv4   "/usr/libexec/getty Pc"         cons25  on  secure
ttyv5   "/usr/libexec/getty Pc"         cons25  on  secure
ttyv6   "/usr/libexec/getty Pc"         cons25  on  secure
ttyv7   "/usr/libexec/getty Pc"         cons25  on  secure
   Строки ttyv0-7 означают виртуальные консоли, переключаться между которыми можно при помощи клавиш Alt+F1-F8. Меняем в этих строках столбец cons25 на cons25r, чтобы получилось следующее:
ttyv0   "/usr/libexec/getty Pc"         cons25r on  secure
# Virtual terminals
ttyv1   "/usr/libexec/getty Pc"         cons25r on  secure
ttyv2   "/usr/libexec/getty Pc"         cons25r on  secure
ttyv3   "/usr/libexec/getty Pc"         cons25r on  secure
ttyv4   "/usr/libexec/getty Pc"         cons25r on  secure
ttyv5   "/usr/libexec/getty Pc"         cons25r on  secure
ttyv6   "/usr/libexec/getty Pc"         cons25r on  secure
ttyv7   "/usr/libexec/getty Pc"         cons25r on  secure
   Остальное содержимое файла изменять не нужно. Сохраняем файл и выходим из редактора ee.
   Следующий шаг заключается в указании системе шрифтов и раскладки клавиатуры. Для этого мы редактируем rc.conf и добавляем в него следующие строки:
# ee /etc/rc.conf

font8x14="cp866-8x14"
font8x16="cp866-8x16"
font8x8="cp866-8x8"
scrnmap="koi8-r2cp866"
keymap="ru.koi8-r"
   Параметры font8x8, font8x14 и font8x16 задают шрифты для дисплея. Параметр scrnmap отвечает за перекодировку символов из koi8-r в cp866, keymap задает собственно раскладку клавиатуры. Перекодировка из koi8-r в cp866 в процессе отрисовки симоволов нужна для того чтобы не возникало проблем с псевдографическими символами в консоли, так же для решения некоторых еще некоторых проблем.
   Чтобы изменения вступили в действие следует перезагрузить систему.
   После перезапуска, чтобы пользователь имел возможность работать с русскими знаками, следует задать класс описаный в /etc/login.conf. Для изменения параметров учетной записи пользователя мы будем использовать утилиту pw. Логинимся в качестве root и набираем команду с аргументами:
# pw usermod ИМЯ_ПОЛЬЗОВАТЕЛЯ -L russian
   Если залогиниться полсле этого данным пользователем, то все сообщения системы будут на русском языке. Переключение между русской и латинской раскладкой осуществляется при помощи клавиши Caps Lock.