Поддержка русского языка в консоли Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Следующая версия Следующая версия справа и слева
wiki:russian_font_in_console [2015/04/30 23:05]
[Кому интересно - откуда ноги растут...]
wiki:russian_font_in_console [2016/06/03 21:14]
[Решение для ubuntu 15.10]
Строка 1: Строка 1:
 ====== Поддержка русского языка в консоли ====== ====== Поддержка русского языка в консоли ======
-<note important>​Данная статья актуальна по крайней мере для тех, у кого нет поддержки русского в консоли в версиях *Ubuntu ​начиная ​с 11.04 , и особенно для пользователей Ubuntu Server этих же версий.</​note>​+<note important>​Данная статья актуальна по крайней мере для тех, у кого нет поддержки русского в консоли в версиях *Ubuntu с 11.04 по 14.10, и особенно для пользователей Ubuntu Server этих же версий
 + 
 +В 15.04 изменена система загрузки (sustemd) и описанное ниже средство не помогает.</​note>​
  
 <note tip>В версиях 12.10 и 13.04 эта проблема вроде как была решена.</​note>​ <note tip>В версиях 12.10 и 13.04 эта проблема вроде как была решена.</​note>​
Строка 6: Строка 8:
 <note tip>UPD: Русские фонты в сервере 14.04 также не работают без лекарства. <note tip>UPD: Русские фонты в сервере 14.04 также не работают без лекарства.
 Похоже отключенный FRAMEBUFFER - это хроническая болезнь серверной версии.</​note>​ Похоже отключенный FRAMEBUFFER - это хроническая болезнь серверной версии.</​note>​
 +
 ====== Почему в консоли квадратики вместо русских букв? ====== ====== Почему в консоли квадратики вместо русских букв? ======
  
Строка 15: Строка 18:
 ======= Как же правильно лечить больного?​ ======= ======= Как же правильно лечить больного?​ =======
  
-Оказывается,​ всего навсего,​ нужно включить поддержку фреймбуфера на этапе инициализации ядра.\\+Оказывается,​ всего навсего,​ нужно включить поддержку фреймбуфера на этапе инициализации ядра. Это в свою очередь разрешит выполнение нужных скриптов,​ которые загрузят фонты на самом раннем ​этапе инициализации ядра.\\
 Для этого:​\\ Для этого:​\\
 1. в любом текстовом редакторе с правами рута нужно в файл /​etc/​initramfs-tools/​initramfs.conf добавить строчку FRAMEBUFFER=Y. 1. в любом текстовом редакторе с правами рута нужно в файл /​etc/​initramfs-tools/​initramfs.conf добавить строчку FRAMEBUFFER=Y.
Строка 24: Строка 27:
 2. Обновить образ рамдиска периода инициализации ядра (initrd):\\ 2. Обновить образ рамдиска периода инициализации ядра (initrd):\\
 <​code>​sudo update-initramfs -u</​code>​ <​code>​sudo update-initramfs -u</​code>​
-Поле этих манипуляций наконец начнут работать настройки сделанные командой((эта команда,​ кстати,​ тоже инициализирует процесс ​перестроения ​initdr)): \\ +Поле этих манипуляций наконец начнут работать настройки сделанные командой((эта команда,​ кстати,​ тоже инициализирует процесс обновления ​initrd)): \\ 
 <​code>​sudo dpkg-reconfigure console-setup</​code> ​ <​code>​sudo dpkg-reconfigure console-setup</​code> ​
 Кириллическими фонтами будет показываться все с самого начала - т.е. даже запрос на проверку дисков (возникающий в процессе инициализации ядра) будет выводится кириллицей,​ а не квадратами.\\ Кириллическими фонтами будет показываться все с самого начала - т.е. даже запрос на проверку дисков (возникающий в процессе инициализации ядра) будет выводится кириллицей,​ а не квадратами.\\
Строка 54: Строка 57:
  
 Так вот, оказывается,​ разработчики решили,​ что фреймбуфер нужен для рисования заставки и ... и __только__ для этого. Больше (оказывается) он никому,​ ни зачем, не нужен.:​-D Поэтому,​ если заставку рисуем - то фреймбуфер разрешаем (а то как же - без него же не нарисовать заставку),​ а если заставку не рисуем,​ то и фреймбуфер включать незачем,​ не включаем.... Нет, позже, после инициализации ядра, фреймбуфер все-таки где-то активируется,​ но поезд уже ушел - фонты на этапе иницализации ядра не загрузились.... "а кому надо - те пусть вызывают setupcon ...";​-) Так вот, оказывается,​ разработчики решили,​ что фреймбуфер нужен для рисования заставки и ... и __только__ для этого. Больше (оказывается) он никому,​ ни зачем, не нужен.:​-D Поэтому,​ если заставку рисуем - то фреймбуфер разрешаем (а то как же - без него же не нарисовать заставку),​ а если заставку не рисуем,​ то и фреймбуфер включать незачем,​ не включаем.... Нет, позже, после инициализации ядра, фреймбуфер все-таки где-то активируется,​ но поезд уже ушел - фонты на этапе иницализации ядра не загрузились.... "а кому надо - те пусть вызывают setupcon ...";​-)
 +
 +====== Решение для ubuntu 15.10 и более поздних ======
 +В Ubuntu 15.10 имеется неисправленный баг с настройкой локали https://​bugs.launchpad.net/​ubuntu/​+source/​console-setup/​+bug/​1511975. Поэтому для настройки русского языка необходимо проделать следующее
 +1. <​code>​sudo dpkg-reconfigure console-setup</​code>​ (настройки в файле /​etc/​default/​console-setup)
 +<​code>​
 +/​dev/​tty[1-6]
 +UTF-8
 +Combined - Latin; Slavic and non-Slavic cyrillic
 +Let system select suitable font
 +8x16
 +</​code>​
 +
 +2.<​code>​sudo dpkg-reconfigure keyboard-configuration</​code>​ (настройки в файле /​etc/​default/​console-setup)
 +<​code>​
 +Generic 105-key (Intl) (выберите вашу клавиатуру)
 +Russian
 +Russian (выберите вашу раскладку)
 +Control+Shift (выберите шорткат для смены раскладки)
 +No temporary switch
 +The default for the keyboard layout
 +No compose key
 +</​code>​
 +3. <​code>​sudo vim /​lib/​systemd/​system/​console-setup.service</​code>​
 +
 +Заменить последнюю строку ​
 +<​code>​ExecStart=/​usr/​bin/​loadkeys /​etc/​console-setup/​cached.kmap.gz</​code>​
 +на
 +<​code>​ExecStart=/​bin/​setupcon</​code>​
 +4. <​code>​sudo reboot</​code>​
  
 ====== Вредные советы ====== ====== Вредные советы ======