- Меняем язык системы в Ubuntu
- Меняем язык через графическую оболочку
- Меняем язык через терминал
- Локализация и кодировка Linux
- Установка и настройка часовых зон.
- Как поменять язык Linux без переустановки системы
- Смена локали для текущий сессии
- Изменение языковых настроек насовсем для одного пользователя
- Изменение системной локали по умолчанию
Меняем язык системы в Ubuntu
Язык операционной системы Ubuntu можно выбрать еще на этапе установки, как в Windows или macOS. Более того, иногда она сама определяет регион, язык, время и раскладку. Если этого не случилось, и вы поневоле работаете в английской версии Ubuntu, все можно настроить вручную уже в действующей системе.
Меняем язык через графическую оболочку
- Кликаем по информационной панели в правом верхнем углу рабочего стола (там, где отображаются индикаторы сети и аккумулятора).
Это, по сути, короткий путь к настройкам
- В появившемся окошке щелкаем по иконке в виде шестеренки. Это ссылка на основные настройки оболочки GNOME.
Переходим к параметрам Ubuntu
- Оказавшись в настройках, ищем в боковой панели вкладку с названием Region & Language (Язык и регион) и переходим в нее.
Выбираем вкладку с настройками языка
В правой части интерфейса появится список настроек языка и клавиатуры. В каждом меню можно указать, на каких языках вы хотите печатать, в каком регионе вас будут видеть веб-сайты и приложения и какой язык будет глобально использоваться в системе.
У меня установлен английский, выбранный по умолчанию
- В открывшемся списке выбираем нужный язык и ставим напротив него галочку.
- Затем кликаем по кнопке Select.
У меня установлена «укороченная» версия Ubuntu и тут нет русского языка. У вас будет
В некоторых системах с легковесными оболочками типа XFCE или Cinnamon может не быть отдельной программы для настроек. В Linux Mint с XFCE, например, вместо этого используется отдельное приложение «Языки». Такие приложения можно найти с помощью поисковика в списке доступных программ.
Меняем язык через терминал
Изменить системный язык можно и вручную. За него отвечают два конфигурационных файла в директории /etc/. Достаточно открыть эти файлы и поочередно изменить значения языка, указанные в соответствующих строках.
- Откроем файл /etc/default/locale любым редактором с помощью команды: sudoedit /etc/default/locale.
Можно открыть с помощью конкретного редактора, указав его название перед путем до файла
- Ищем внутри строку LANG=“en_US” и меняем ее значение на нужное нам. Например, для русского языка на “ru_RU”.
Обычно здесь указывается и другая связанная с языками информация
- Открываем файл в корневой директории /.pam_environment любым редактором с помощью команды sudoedit ~/.pam_environment
- Ищем аналогичные строки и редактируем их так же, как в предыдущем файле.
Возможно, редактировать второй файл не придется. Его может вовсе не оказаться в системе, и достаточно будет внести изменения в /etc/default/locale
После проделанных изменений нужно сохранить их, а затем перезагрузить компьютер.
Локализация и кодировка Linux
В этой статье мы рассмотрим переменные, которые отвечают за локализацию и кодировку операционной системы. Данная тема достаточно важна, т.к. некоторые прикладные сервисы требуют нестандартной кодировки или региональной локализации.
В Linux системах есть основная переменная $LANG – которая задает основной язык системы. Есть и другие переменные, но они берут изначально настройки с этой основной переменной $LANG . Можно настроить отдельные какие-то переменные, но можно все же давать значение основной переменной $LANG и она будет давать значение всем остальным.
Есть так же переменная LC_ALL – которая позволяет нам разом перезаписать все языковые настройки. Есть также утилита locale которая показывает кучу переменных, которые относятся к языковым настройкам.
$LANG= – данную переменную обычно используют для написания скриптов, чтобы те или иные настройки установить по умолчанию для выполнения скрипта. В большинстве случаев данная настройка включает английский язык по умолчанию.
Есть такая команда env , которая выводит заданные переменные в системе.
И тут в частности, есть переменная которая отвечает за языковые настройки. В нашем случае LANG=en_US.UTF-8 , т.к скриншот делался на операционной системе с английской локализацией по умолчанию. Мы видим en_US в кодировке UTF-8 . En_US – говорит о том, что у нас используется американский английский язык.
Посмотреть все переменные относящиеся к данной локализации мы можем с помощью утилиты locale .
Как вы видите все остальные переменные на данной установленной операционной системе тоже американские. Почему это важно? Во-первых, это важно для логгирования. С такими настройками система будет писать файлы системных и других логов в американском формате yyyy-mm-dd (год-месяц-день: 2006-12-31), в русском формате же правильно будет dd-mm-yyyy . И при передаче логов из одной системы в другую возникнут ошибки. Другой пример — бывают нестандартные решения, допустим хранение базы данных 1С в postgre . Для того чтобы сервер приложений корректно работал с базой опять же необходима русская локализация. И таких примеров взаимодействия можно привести достаточно много.
Теперь, если у нас появилась необходимость поменять какую-нибудь, переменную, например, LC_TIME то делаем следующее:
LC_TIME=ru_RU.UTF-8 – задаем переменную.
export LC_TIME – загружаем переменную.
Мы можем сразу все настройки изменить — LC_ALL=ru_RU.UTF-8
Если мы ошибемся с вводом локали (языковой пакет настроек) или в системе не загружена такая локаль, то система нам выдаст ошибку:
Надо выполнить инсталляцию языкового пакета
sudo apt-get install language-pack-ru
Генерация файла с обновленной информацией о добавленных пакетах в систему: sudo locale-gen
И после этого опять попробовать сменить.
Для возврата в исходное состояние настроек мы можем выполнить команду unset LC_ALL . После выполнения данной команды все настройки языковые системы вернутся в исходное состояние.
Немного о кодировке. Кодировка — это представление символов в определенном виде. Самые распространенные кодировки, используемые в Linux:
- ASCII – 128 основных символов;
- ISO-8859 – большинство латинских символов;
- UTF-8 -символы Unicode.
Для конвертации используется утилита iconv , но есть более практический инструмент. Если нам необходимо конвертировать какой-то файл в другой, то проще всего использовать Notepad++. Открываем файл, в меню выбираем пункт кодировка. Программа покажет текущую и меняем на интересующую нас. Затем сохраняем.
В случае если у нас только консольное подключение, делаем это с помощью iconv . Общий вид команды:
iconv [опция] [-f кодировка 1] [-t кодировка 2] [исходный файл] [целевой файл]
Установка и настройка часовых зон.
Утилита tzselect позволяет осуществить поиск нужной временной зоны. Появляется мастер пошаговый, который позволяет сделать свой выбор и в конце дает инструкцию, как сделать, чтобы выбор сохранился.
Вторая утилита это date , которая выводит текущую дату и время, если запустить ее без параметров, а также позволяет установить их. Опции и форматы можно посмотреть при помощи команды man date
Для установки даты и времени необходимы права суперпользователя.
sudo date -s “yyyymmdd hh:mm” – обратите на формат вводимых данных.
Как поменять язык Linux без переустановки системы
При установке Linux можно выбрать язык системы (локаль) — и в дальнейшем этот язык будет использоваться в программах и окнах Linux (за исключением тех приложений, для которых не сделан перевод).
Если вы решили поменять язык Linux, то вам не нужно переустанавливать её — достаточно выполнить простые действия.
Чтобы узнать текущие языковые настройки, наберите команду:
Чтобы посмотреть доступные языковые настройки (локали), воспользуйтесь командой
Для изменения языка системы, нужно, чтобы локаль, на которую вы хотите поменять язык, уже присутствовала в системе. Если её нет, то нужно добавить.
Чтобы добавить новую локаль, откройте файл /etc/locale.gen:
И раскомментируйте там строки с желаемыми новыми локалями. Затем выполните команду:
Теперь новые языковые настройки (новую локаль) вы можете видеть в списке доступных локалей.
Смена локали для текущий сессии
Чтобы поменять язык и кодировку для текущей сессии, вам нужно установить переменную окружения LANG, это можно сделать командой export:
# Установить английскую локаль export LANG=en_US.UTF-8 # Установить русскую локаль export LANG=ru_RU.UTF-8 # Установить французскую локаль export LANG=fr_FR.UTF-8
Если в вашей системе это не сработало, то замените переменную LANG на переменную LANGUAGE, например:
Изменение языковых настроек насовсем для одного пользователя
Добавьте строку с экспортом желаемой локали (например, export LANG=en_US.utf-8) в файл ~/.bashrc
Изменения начнут действовать после выхода/входа и будут действовать после каждой перезагрузки.
Изменение системной локали по умолчанию
Есть два альтернативных метода смены локали.
Первый — это запустить следующую команду (укажите нужную вам локаль):
sudo localectl set-locale LANG=en_US.UTF-8
sudo localectl set-locale LANG=ru_RU.UTF-8
Второй метод — прописать язык в файле /etc/locale.conf, откройте его:
и добавьте туда строку с нужной локалью:
После перезагрузки система предложит изменить имена папок на локализованные:
Чтобы это окно не появлялось при каждой загрузке системы, поставьте галочку «Не задавать больше этот вопрос».
Чтобы вновь открыть это окно, выполните в командной строке:
echo 'en_US' > ~/.config/user-dirs.locale xdg-user-dirs-gtk-update