Удаление локалей в ubuntu

Обновлено: 03.07.2024

Ковыряния в потрохах пингвина: дистрибутивы на основе Linux, их обзоры, их настройка, настройка и обзоры программ для них, и просто всё что попало в область внимания из сферы линукс.

22 июля 2010 г.

Настройка локалей в Ubuntu

Опишу небольшой глюк с локалями, возникший недавно у меня. Точнее это даже не столько глюк, сколько, скорее всего, я не до конца разобралась, однако проблему я решила и это может кому-то помочь (да и мне, если повторится).
Глюк проявился следующим образом - внезапно весь интерфейс стал на английском языке. И произошло это после того, как я заменила экран входа в систему с kdm на slim, хотя в настройках самого slim ничего даже близко нет и он использует те же сессии, что и gdm и kdm.
Сам по себе английский интерфейс лично для меня даже предпочтительнее, но как выяснилось позже, проблема проявлялась и более неприятным образом.
Во-первых, в 2gis и, скорее всего, и в других приложениях под wine перестала печататься кириллица - в интерфейсе она отображалась по прежнему нормально, а напечатать в полях поиска можно было только латиницей.
А во-вторых, в эмуляторах терминала, вместо кириллических символов печатались знаки вопроса. Если открыть пункт меню Terminal, то можно увидеть такую картину:

И тут даже можно выбрать кодировку UTF-8, тогда кириллица будет печататься нормально, но работает это лишь в текущем открытом окне программы.

На скриншоте ещё заметно, что текущей локалью установлена POSIX, однако при входе через kdm или gdm, всё возвращается к нормальному виду без изменения настроек. И, кажется, даже если зайти через slim в gnome или kde, то можно поменять локаль через их gui-инструменты.
Однако, правка файлов никак не помогала, пока я не поставила пакет utils-linux-locale. Не знаю, в чём тут секрет, тем более у других пользователей, этот пакет не установлен и всё работает (ну правда в kde с kdm), но помогло именно это.

Теперь вкратце инструкция как вообще изменять язык интерфейса и добавлять недостающие локали не через gui-утилиты.
Во-первых, в папке /var/lib/locales/supported.d/ лежат три файла: en, ru и local. Это у меня их три, а если вам нужна ещё, допустим, и японская локаль, то добавится ещё один файл (правда, придётся ещё установить необходимые пакеты).
В файлах en и ru прописаны варианты данных языков, которые будут сформированы в системе, в частности:

А в файле local вписываются те кодировки, которые будут использоваться, у меня содержание файла такое: После измнения в этих файлах есть смысл перегенерировать локали командой locale-gen.

Текущая локаль в системе задаётся в файле /etc/default/locale:

Это у меня, так как мне хочется интерфейс на английском. А русский язык и кириллица всё равно поддерживаются при этом за счёт сформированных локалей. Правда, в примерах, которые я видела в сети, вторая строка обычно выглядит так: LANGUAGE="en_EN:en:ru_RU:ru", типа чтобы русский язык поддерживался, но у меня работает и без этого.
И ещё в старых версия системы то же самое прописывалось в файле /etc/environment, однако, сейчас он вроде бы не используется, хотя существует, но на всякий случай можно и там прописать.

Проверить, как локаль установлена основной можно командой locale:

LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=

Кстати, посмотреть, какие локали ещё поддерживаются можно в файле /usr/share/i18n/SUPPORTED, в частности для русского языка ещё доступна:

Там же рядом лежат файлы локалей в /usr/share/i18n/locales/ и файлы кодировок в /usr/share/i18n/charmaps/.

В этом "руководстве", возможно, есть ошибки, так как готовые рецепты из сети не всегда работают или не всегда работают как надо, и, возможно, оно ещё будет дополняться.

Как учесть затраты на фирменные пакеты.

Цена оборудования для изготовления бумажных пакетов в Московской области.

Локаль (locale или локализация) в Linux определяет, какой язык и какой набор символов (кодировку), пользователь видит в терминале. Посмотрим, как проверить текущие настройки языка и кодировки, как получить список всех доступных локалей, как сменить язык и кодировку для текущей сессии или установить их постоянно.

Для тех, кому лень читать всю статью до конца — чаще всего для локализации консоли достаточно повторно сконфигурировать пакет locales :

Сначала будут созданы нужные локали (их выбрать на первом экране), потом установлена локаль по умолчанию (ее выбрать на втором экране).

Текущие настройки языка

Посмотрим информацию о текущем языковом окружении:

Список доступных локалей

Теперь посмотрим список всех установленных языков и кодировок:

Есть только системная локаль C.UTF-8 , которая присутствует всегда. А нам надо добавить еще две локали — en_US.UTF-8 и ru_RU.UTF-8 .

Добавить новую локаль

Смотрим список всех поддерживаемых (доступных для установки) локалей:

Устанавливаем нужные локали — en_US.UTF-8 и ru_RU.UTF-8 :

Второй способ установить локали — расскомментровать нужные строки в файле /etc/locale.gen

И просто выполнить команду locale-gen без указания локалей:

Подробная информация о локалях

Более подробную информацию об установленных в системе локалях можно посмотреть так:

Часть локалей размещена в архиве /usr/lib/locale/locale-archive , а часть — в директориях внутри /usr/lib/locale/ .

Локаль по-умолчанию

Хорошо, нужные локали у нас теперь есть, осталось только задать локаль по умолчанию:

Эта команда запишет в файл /etc/default/locale строку:

После этого надо будет перезайти в систему. И проверяем информацию о языковом окружении:

Теперь все правильно, так что запишем эту информацию в файл /etc/default/locale :

Быстрая локализация

До сих пор мы все делали ручками, но если лень — можно просто повторно сконфигурировать пакет locales . Сначала будут созданы нужные локали (их нужно выбрать на первом экране), потом установлена локаль по умолчанию (ее нужно выбрать на втором экране).



Удалить лишние локали

После установки (генерации) локали, она помещается в архив /usr/lib/locale/locale-archive . Файл архива — это файл, отображаемый в память, который содержит все локали системы; он используется всеми локализованными программами. Посмотреть список локалей в архиве можно с помощью команды:

Удалить заданную локаль из файла архива:

Обратите внимание на название локали — ru_UA.utf8 , а не ru_UA.UTF-8 . Если неправильно указать локаль — она не будет удалена из архива:

В случае, если утилита locale-gen была вызвана с опцией --no-archive , надо удалить соответствующую директорию в /usr/lib/locale :

Переводы для системных программ

Локализация для текущей сессии

Достаточно временно установить переменную окружения LANG в текущей сессии терминала:

Или даже так — передать переменную LANG конкретной программе:

Файлы конфигурации шрифта и клавиатуры

Настройки можно найти в файлах конфигурации /etc/default/console-setup и /etc/default/keyboard :

Это системные настройки, пользователь может создать свои в файлах

Настройка шрифта и клавиатуры

Чтобы сформировать файлы конфигурации /etc/default/console-setup и /etc/default/keyboard можно использовать команды:



После того, как файлы конфигурации будут сформированы, нужно выполнить команду setupcon без аргументов или перезагрузить систему.

Можно дублировать: как я могу изменить язык системы? $ локализации-сделать вывод такой: с С. в utf-8 en_AG en_AG.UTF8 в en_AU.UTF8 в en_BW.UTF8 в en_CA.UTF8 в en_DK.UTF8 в en_GB.UTF8 в en_HK.UTF8 в en_IE.

Инструменты командной строки на одном языке, система в другой

Удалить локаль из системы

По какой-то неясной причине мой файл /var/lib/locales/supported.d/local содержал дополнительную локаль, которой обычно не должно быть (в моем примере, pl_PL.UTF-8 UTF-8). Я запускал sudo dpkg-reconfigure .

Как настроить глобальную локаль для компьютера? Я недавно установил Kubuntu 14.04LTS на английском языке, но, поскольку я нахожусь в Испании, я выбрал Испанию в качестве страны, а затем изменил параметры локали, чтобы я .

Переключить язык вывода команд с родного языка на английский

Как удалить локаль через командную строку?

У меня 5 неиспользуемых локалей в моей системе. Как я могу удалить их из командной строки? Я использую localepurge, но это не сработало.

Как установить понедельник в качестве первого дня недели в приложении GNOME Calendar?

Каков рекомендуемый способ изменить первый день недели на понедельник (вместо воскресенья, как на скриншоте ниже)? Я не смог найти ничего связанного ни с настройками часов, ни с системой -> .

Как предоставить установщику возможность использовать определенный язык?

Я делаю предварительный запрос (фактически только запрашиваю клавиатурную карту и часовой пояс) установки Lucid Lynx и пытаюсь использовать ту же локаль, которую я выбрал на экране загрузки, I.E. если я выберу французский язык, я хочу .

Язык настройки неполадок

Я действительно борюсь с этой проблемой языка. Я пошел в System- & gt; Administration- & gt; Языковая поддержка и переместил турецкий (Türkçe) наверх. Затем я нажал кнопку «Применить к системе» и перезапустился. .

Изменение первого дня недели с использованием GUI в Unity

Есть ли возможность изменить первый день недели на понедельник в апдейте GNOME Calender с помощью Unity GUI? Трудно изменить его сейчас на стандартного пользователя. (Согласно международному стандарту .

Как изменить время отображения Thunderbird на 24-часовой формат?

В настоящее время Thunderbird отображает время в режиме AM / PM. Как я могу изменить его на 24-часовой режим? ОБНОВЛЕНИЕ 1: $ locale | grep LC_TIME LC_TIME = "en_US.UTF-8"

Как настроить глобальную локаль для компьютера? Недавно я установил Kubuntu 14.04LTS на английском языке, но поскольку я в Испании, я выбрал Испанию как страну, а затем изменил варианты локали, чтобы я .

Переменные локали не действуют в удаленной оболочке (perl: warning: Ошибка настройки локали.)

У меня свежая установка Ubuntu 12.04. Когда я подключаюсь к своему удаленному серверу, у меня появляются такие ошибки:

Читайте также: