Автор Тема: Квадраты вместо кириллицы в консоли 16.04 LTS  (Прочитано 55282 раз)

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4812
  • Да будет свет!
В процессе тестирования Matuntu на пакетной основе 16.04 LTS было выявлено, что в консоли кириллица отображается квадратами.
Первоначально был установлен шрифт для консоли sudo apt-get install console-cyrillicЗатем выполнила команду sudo dpkg-reconfigure console-setupВыбрала UTF-8 -> Cyrillic - KOI8-R and KOI8-U  -> Fixed -> далее по умолчанию.
Выполнила редактирование файла /etc/profile sudo pluma /etc/profile в самом конце вставила строку: setupcon --forceНо этих действий оказалось недостаточно, поскольку в Xenial состоялся переход на systemd.
Решение правильного отображение кириллицы произошло после создания файла: sudo pluma /lib/systemd/system/systemd-vconsole-setup.service открылся пустой текстовый документ, в который нужно вставить строку ExecStart=/bin/setupconДля чистоты эксперимента после перезагрузки проверила работу консоли с кириллицей, которая стала отображаться правильно.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн alv

  • Ветеран
  • *****
  • Сообщений: 1470
  • Это я и есть
    • Наш Блогосайт
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #1 : 21 Января 2016, 11:34:43 »
Ага, всё верно. Пара дополнений.
Устанавливать шрифт - не обязательно, штатно имеется лучший в мире Terminus  с поддержкой всех кириллических чарсетов.
Надо помнить, что всё это может слететь при обновлении ядра, Иксов и вообще любого пакета, влекущего за собой регенерацию initrd. А может не слететь - закономерности не обнаружил.
Но если слетело - то повторить процедуру, то есть
# setupcon -f
с мгновенным результатом, и
ExecStart=/bin/setupcon
в /lib/systemd/system/systemd-vconsole-setup.service - для увековечивания.
Тут вот чуть подробней.
За прекрасных дам!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4812
  • Да будет свет!
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #2 : 21 Января 2016, 11:56:37 »
Спасибо, Алексей!
Шрифт установила sudo apt-get install xfonts-terminusВ синаптике их три, в т.ч. xfonts-terminus-dos и xfonts-terminus-oblique, по умолчанию ни один из них не был установлен.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн alv

  • Ветеран
  • *****
  • Сообщений: 1470
  • Это я и есть
    • Наш Блогосайт
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #3 : 21 Января 2016, 12:04:23 »
В синаптике их три, в т.ч. xfonts-terminus-dos и xfonts-terminus-oblique, по умолчанию ни один из них не был установлен.
Так это иксовые пиксельные шрифты. А консольные - в /usr/share/consolefonts/, они есть по дефолту, Uni2 и Uni3 Terminus
Там в общем-то все кириллические консольные шрифты есть, только я уже не помню, где карта соответствий встроена, а где нет. Но Terminus - вариант беспроигрышный.
За прекрасных дам!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4812
  • Да будет свет!
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #4 : 07 Февраля 2016, 12:47:13 »
Ещё раз проверила способ русификации консоли в 16.04. Начинать можно сразу со второго пункта из начального сообщения, т.е. без установки console-cyrillic. После выполнения остальных пунктов и перезагрузки системы в консоли полноценно отображается кириллица.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4812
  • Да будет свет!
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #5 : 26 Февраля 2016, 11:33:45 »
В процессе тестирования второй альфы 16.04 с Mate 1.12.1 проблема квадратиков вместо кириллицы в консоли не стала решаться описанными выше способами.
И только благодаря Eronex, за что ему огромное спасибо, дополнение строки ExecStart=/bin/setupcon в конец файла console-setup.services в том же каталоге /lib/systemd/system/, в нашем случае sudo pluma /lib/systemd/system/console-setup.servicesпомогло в решении этого вопроса.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн alv

  • Ветеран
  • *****
  • Сообщений: 1470
  • Это я и есть
    • Наш Блогосайт
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #6 : 26 Февраля 2016, 16:49:59 »
В процессе тестирования второй альфы 16.04 с Mate 1.12.1 проблема квадратиков вместо кириллицы в консоли не стала решаться описанными выше способами.
Есть подозрение, что это зависит не от дистрибутива и его версии, а от версии systemd. В MX Linux с другой версией systemd проблема и способом Eronex'а не решается.
Закончу с ZFS - буду разбираться...
PS но, кажется, веселие с этим делом нам обеспечили надолго :)
За прекрасных дам!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4812
  • Да будет свет!
После недавних обновлений 16.04 кириллица в консоли снова отображается квадратиками и уже ни один из перечисленных советов по решению проблемы не помогает. Увы, systemd — в действии…  :(
Делай с нами, делай как мы, делай лучше нас!

Оффлайн alv

  • Ветеран
  • *****
  • Сообщений: 1470
  • Это я и есть
    • Наш Блогосайт
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #8 : 13 Апреля 2016, 04:13:21 »
Очередной вариант решения вечной задачи кириллизации консоли. Поскольку нет никакой уверенности, что он будет работать всегда, везде и у всех, там же описано несколько паллиативных костылей.
За прекрасных дам!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4812
  • Да будет свет!
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #9 : 13 Апреля 2016, 05:34:07 »
К сожалению, ни один из "паллиативных костылей" мне не помог избавиться от квадратиков в консоли  :(
Делай с нами, делай как мы, делай лучше нас!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4812
  • Да будет свет!
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #10 : 13 Апреля 2016, 07:15:57 »
Решение проблемы найдено в статье Поддержка русского языка в консоли.
Оказывается, всего навсего, нужно включить поддержку фреймбуфера на этапе инициализации ядра. Это, в свою очередь, разрешит выполнение нужных скриптов, которые загрузят шрифты на самом раннем этапе инициализации ядра.
Для этого:
1. В любом текстовом редакторе с правами рута нужно в файл /etc/initramfs-tools/initramfs.conf добавить строчку FRAMEBUFFER=Y.
Это также можно сделать выполнением следующих команд:
sudo -i echo 'FRAMEBUFFER=Y' >> /etc/initramfs-tools/initramfs.conf exit2. Обновить образ рамдиска периода инициализации ядра (initrd):
sudo update-initramfs -uПосле выполнения указанных пунктов квадратики в консоли заменились читабельной кириллицей  :)

Огромная благодарность автору этого рецепта EvgenT.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн alv

  • Ветеран
  • *****
  • Сообщений: 1470
  • Это я и есть
    • Наш Блогосайт
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #11 : 13 Апреля 2016, 10:43:05 »
Решение проблемы найдено в статье Поддержка русского языка в консоли.
Спасибо за ссылку. Надо пробовать.
После выполнения указанных пунктов квадратики в консоли заменились читабельной кириллицей  :)[/b].
Интересно, придётся ли повторять процедуру после обновлений, влекущих регенерацию initrd.

UPD. Странное утверждение автора:
Цитировать
Но без FRAMEBUFFER не возможно загрузить шрифты с поддержкой национальных символов!
А как же тогда кириллизовали консоль во времена, когда почти ни в одном дистре фреймбуфер не включали по умолчанию? Такие, кстати, и теперь есть. Или когда фрейбуфера не было как класса?
Про console-cyrillic он тоже не прав: во времена 8-битных кодировок без него часто было не обойтись. Да, с юникодом он просто стал не нужен, но называть его дебильным... мягко говоря, не очень политкорректно. Как и саму идею: для полноценной поддержки CJK тоже существуют персональные пакеты :)
« Последнее редактирование: 13 Апреля 2016, 11:01:43 от alv »
За прекрасных дам!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4812
  • Да будет свет!
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #12 : 13 Апреля 2016, 12:50:14 »
Каюсь, поспешила с выводами. После перезагрузки системы квадратики вернулись. На другой машине повторить описанное постом выше решение не удалось.
Надо внимательнее присмотреться к статье и её обсуждению на хабре Ubuntu. Русификация консоли в 2016 году, хотя сама консоль в русификации не нуждается, вопрос лишь в корректности отображения кириллицы в текстовой консоли.
Делай с нами, делай как мы, делай лучше нас!

Оффлайн alv

  • Ветеран
  • *****
  • Сообщений: 1470
  • Это я и есть
    • Наш Блогосайт
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #13 : 13 Апреля 2016, 13:31:53 »
Надо внимательнее присмотреться к статье и её обсуждению на хабре Ubuntu. Русификация консоли в 2016 году
Я её читал довольно внимательно. Мне показалось, что там турусы на колёса накручены.
В сущности, вопрос сводится к обеспечению автоматического запуска setupcon -f при старте системы. Что, конечно, тоже костыль - но самый простой и единственно работающий.
А правка кода с перекомпиляцией пакета, если не попадёт в апстрим (а похоже, не попадёт никогда) - штука очень ненадёжная.
За прекрасных дам!

Оффлайн vita

  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4812
  • Да будет свет!
Re: Квадраты вместо кириллицы в консоли 16.04 LTS
« Ответ #14 : 13 Апреля 2016, 13:33:06 »
Тем не менее последовала совету установить пересобранный автором статьи пакет Fixed keyboard-configuration deb-package, несмотря на то, что многие считают это неправильным, но другого выхода пока не видят.
Для его установки из каталога с файлом открыла терминал и выполнила sudo dpkg -i keyboard-configuration_*.deb sudo apt-mark hold keyboard-configurationПосле перезагрузки кириллица в консоли отображается правильно.
Попробую проверить повторяемость найденного решения на другом компьютере.
Делай с нами, делай как мы, делай лучше нас!