В наших материалах тема региональных настроек Linux-систем ранее почти не поднималась. Подразумевалось, что система устанавливается читателями самостоятельно и все эти вопросы уже решены на стадии установки. Но бывают ситуации, когда нужно работать с уже готовой системой, например, VPS у зарубежного провайдера или в облачных системах типа Amazon или Azure. В этом случае появляется необходимость настроить систему для использования родного языка и привычных региональных настроек.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Начнем мы с одного распространенного заблуждения: очень часто под локализацией системы подразумевают только изменение языка интерфейса системы, забывая об остальных настройках. В тоже время локализация системы - это не столько язык интерфейса, вы можете оставить его английским или любым иным, по вашему пожеланию, а способность системы полноценно работать с документами и системами, использующими ваш родной язык.
Это, в первую очередь, поддержка символов национального алфавита, кодовых страниц и раскладок клавиатуры, форматов чисел, а также настроек даты и времени. Если данные настройки не выполнить или выполнить неправильно, то имена файлов и содержимое документов с использованием символов отличных от стандартного латинского алфавита могут быть искажены или испорчены. Также масса проблем может возникнуть в дальнейшем, например, при переходе на локализованную систему, когда имена уже существующих файлов или ссылок на них могут оказаться неверными или вовсе недействительными.
Ниже на рисунке прекрасный пример того, что бывает, если на нелокализованный сервер скриптом были залиты файлы с именами, содержащими национальные символы, в данном случае кириллицу.
При этом сам скрипт, в данном случае CMS, функционирует нормально и при скачивании с сайта файлы имеют нормальные имена на кириллице, но с ними практически невозможно работать на сервере, так как непонятно, что это за файлы (вместо имен кубики), и нет возможности скачать их на Windows-систему. Переименовать файлы также нет возможности, так как сразу получим массу битых ссылок по всему сайту.
Поэтому, самым правильным решением будет сразу же настроить сервер на работу с нужной локализацией и снять целый пласт потенциальных проблем, тем более, что сделать это несложно.
Debian
Для правильного отображения символов национальных алфавитов в определенной кодировке в Linux-системах предназначены локали (locales), узнать какие локали уже установлены в системе можно командой:
locale -a
Обычно установлена и используется английская локаль en_US.utf8, однако, если вы, например, приобрели VPS в Германии, может присутствовать только национальная локаль, в этом случае, кроме русской, также рекомендуется установить английскую локаль.
Для генерации и настройки локалей используйте команду:
dpkg-reconfigure locales
Откроется псевдографическая утилита, которая предложит выбрать используемые локали, добавляем ru_RU.utf8
Затем укажите используемую по умолчанию локаль, тем самым установив язык системы:
Большинство "инструкций" в интернете на этом заканчиваются, но установить локаль недостаточно, нужно еще настроить консоль, т.е. ту среду ввода-вывода с которой вы взаимодействуете. Иначе вы увидите примерно такую картину:
Для настройки консоли запустите следующую утилиту:
dpkg-reconfigure console-setup
Прежде всего зададим кодировку консоли, в современном Linux это UTF-8.
Затем используемые наборы символов, нам нужен комбинированный набор Latin; Slavic Cyrillic; Greek.
И используемый шрифт, здесь посоветовать что-то однозначно нельзя и следует исходить из личных предпочтений, в любом случае выбор можно всегда изменить, запустив утилиту повторно.
Ниже, чтобы облегчить вам выбор, представлены образцы шрифтов:
Остальные настройки, вроде размера шрифта и т.п. не представляют сложности и могут быть оставлены по умолчанию или выставлены в соответствии с собственными предпочтениями. Теперь можно выйти из системы и войти повторно или перезагрузить ее. После этого основным языком системы будет русский и символы кириллицы будут отображаться корректно.
Следующим шагом следует настроить клавиатуру:
dpkg-reconfigure keyboard-configuration
Выбираем тип клавиатуры, по умолчанию это 105-клавишная международная, менять эту настройку без особой необходимости не следует.
Так как система изначально была установлена с локалью en_US, то нам предлагаются американские раскладки, выбираем Другая.
Дальше проще: Страна - Русская и Раскладка - Русская.
Затем выбираем сочетание клавиш для переключения раскладок и отвечаем еще на ряд вопросов, отвечать на который можете по своему усмотрению. Советуем не спешить, там есть интересные возможности, например, клавиша временного переключения между раскладками:
Остался последний штрих - настройки даты и времени:
dpkg-reconfigure tzdata
И устанавливаем текущий часовой пояс, после чего система автоматически переведет часы.
Более подробно о соответствии пунктов tzdata и актуальных часовых поясов РФ можно прочитать в нашей статье: Перевод часов в РФ 26 октября 2014 года - проблемы и решения.
Ubuntu Server
В Ubuntu Server команда dpkg-reconfigure locales не имеет псевдографического интерфейса и при запуске настраивает уже сгенерированные локали. Поэтому придется нужные настройки выполнить вручную, прежде всего сгенерируем русскую локаль (здесь и далее обращаем внимание на регистр команд):
locale-gen ru_RU.utf8
Затем зададим локаль по умолчанию:
update-locale LANG=ru_RU.UTF8
После чего выполним их настройку:
dpkg-reconfigure locales
Следующим шагом будет настройка консоли:
dpkg-reconfigure console-setup
Здесь все настройки аналогичны Debian, выбираем кодировку, набор символов и настраиваем шрифты.
Теперь можно выйти и повторно войти в систему (или перезагрузиться), чтобы продолжить дальнейшую настройку на русском языке. Для полноценной локализации потребуется настроить клавиатуру:
dpkg-reconfigure keyboard-configuration
Мы не будем подробно останавливаться на настройках, так как работа этой утилиты подробно описана выше, в разделе о Debian.
Временные зоны также настраиваются аналогично командой:
dpkg-reconfigure tzdata
Как видим, локализация системы не представляет абсолютно никакой сложности и выполняется в считанные минуты, позволяя снять целый ряд потенциальных проблем, решить которые впоследствии будет гораздо труднее.
Онлайн-курс по устройству компьютерных сетей
На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Последние комментарии