Вопрос Как добавить языковой стандарт на сервер ubuntu?


В настоящее время у меня есть такие места:

locale -a

C
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.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZW.utf8
POSIX

Как установить ru_RU locale на мой сервер?


158
2017-11-06 10:24


происхождения




ответы:


  1. проверьте, какие локали поддерживаются:

    locale -a
    
  2. добавьте нужные вам места (например, ru):

    sudo locale-gen ru_RU
    sudo locale-gen ru_RU.UTF-8
    
  3. запустить эту команду обновления

    sudo update-locale 
    

224
2017-11-06 17:08



... затем запустить sudo update-locale - Justin Force
Что вы делаете, если оно не поддерживается? - Kimble
Не могли бы вы объяснить, почему ru_RU а также ru_RU.UTF-8 нужно? Я мало знаю о локалях. - Sopalajo de Arrierez
Если вы работаете с php5-fpm, вам понадобится sudo service php5-fpm restart - Stalinko
Это было именно то, что мне нужно, но мне пришлось перезапустить Apache, чтобы заставить его работать ... спасибо! - Jabari


Я бы пошел еще один маршрут, который ИМО лучше подходит для стиля Ubuntu. Используйте предоставленные пакеты, Есть пакеты для каждого языкового стандарта, и они выполняют всю работу за вас ... нет необходимости редактировать / var файлы, которые, как я всегда считал, не предназначены для редактирования вручную.

sudo apt-get install language-pack-XX

где XX обозначает код языка. Установка языка также установит все варианты для конкретной страны (например, установка языкового пакета - он установит it_CH.utf8 и it_IT.utf8, установка для NL будет устанавливать nl_AW, nl_AW.utf8, nl_BE.utf8 и nl_NL.utf8 ).


48
2018-01-21 13:38



Я думаю, что это лучший и самый «Ubuntu» способ сделать это - Luke Madhanga
Но генерация локалей обеспечивает такие вещи, как локализованный формат даты, десятичный разделитель, набор символов и т. Д. Языковые пакеты также предоставляют переводы, что не обязательно является намерением. - Oskar Berggren
Согласитесь с Оскаром. Еще сильнее, если вы считаете, что эта установка для сервера - большинство интерфейсов будет по-английски. - igorsantos07
Я боялся, что это тоже изменение текущий язык, но нет. Все отлично. Похоже, лучше всего подходит. Я не особо необходимость «переводы или другие вещи», но если я специально использую локаль по какой-то причине, я ожидаю, что она будет полной. - Balmipour


  1. проверьте, какие локали поддерживаются:

    less /usr/share/i18n/SUPPORTED
    
  2. Добавить локаль в список сгенерированных

    echo ru_RU.UTF8 >> /var/lib/locales/supported.d/local
    
  3. Восстановить список (он будет вызывать locale-gen ...)

     sudo dpkg-reconfigure locales
    

40
2018-01-14 16:54



Мне пришлось добавить второй столбец: echo ru_RU.UTF-8 UTF-8 >> /var/lib/locales/supported.d/local (UTF-8 происходит дважды) на Ubuntu 15.04. В противном случае он работает. - jfs


Я нашел locale-gen, чтобы быть вашим другом. как в (добавление, например, иврита utf8):

root@world:~# locale-gen he_IL.UTF-8

вы можете даже перефразировать его так:

root@world:~# dpkg-reconfigure locales

и убедитесь, что вы сделали добро:

root@world:~# locale -a

Я нашел это решение более простым, чем добавление материала в текстовые файлы, хотя это и есть то, что он делает.


16
2017-07-18 09:10





echo ru_RU.UTF8 >> /var/lib/locales/supported.d/local

Я получаю следующее сообщение в пункте 3: «Ошибка: неправильная запись« ru_RU.UTF8 »

Эта работа для меня:

echo ru_RU.UTF-8 UTF-8 >> /var/lib/locales/supported.d/local

5
2018-01-21 15:56





Используйте языковые пакеты Ubuntu. Все поддерживаемые языки доступны в репозиториях по умолчанию:

apt-cache search language-pack

Полный пример переключения языка в версии Ubuntu (сервер):

jani@example:~$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.1 LTS"

Все доступные (т. Е. Уже установленные) локали могут быть перечислены с:

locale -a

Мой текущий язык en_IE:

jani@example:~$ locale
LANG=en_IE.UTF-8
LANGUAGE=
LC_CTYPE="en_IE.UTF-8"
LC_NUMERIC="en_IE.UTF-8"
LC_TIME="en_IE.UTF-8"
LC_COLLATE="en_IE.UTF-8"
LC_MONETARY="en_IE.UTF-8"
LC_MESSAGES=POSIX
LC_PAPER="en_IE.UTF-8"
LC_NAME="en_IE.UTF-8"
LC_ADDRESS="en_IE.UTF-8"
LC_TELEPHONE="en_IE.UTF-8"
LC_MEASUREMENT="en_IE.UTF-8"
LC_IDENTIFICATION="en_IE.UTF-8"
LC_ALL=
jani@example:~$ date
Sat Nov  1 15:36:51 UTC 2014
jani@example:~$

Поскольку у меня не было локалей ru, мне нужно установить языковой пакет ru:

jani@example:~$ sudo apt-get -y install language-pack-ru
[..]
Generating locales...
  ru_RU.UTF-8... done
  ru_UA.UTF-8... done
Generation complete.
jani@example:~$ 

Теперь доступны локали ru. Системная стандартная локаль устанавливается путем редактирования /etc/default/locale:

jani@example:~$ sudo vi /etc/default/locale
# Created by cloud-init v. 0.7.5 on Mon, 27 Oct 2014 18:46:13 +0000
LANG="ru_RU.UTF-8"
LC_MESSAGES=POSIX
jani@example:~$

Повторно войдите в систему и проверьте свой новый язык:

jani@example:~$ locale
LANG=ru_RU.UTF-8
LANGUAGE=
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES=POSIX
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
jani@example:~$ date
Сб. нояб.  1 15:43:45 UTC 2014
jani@example:~$ 

4
2017-11-01 16:07





изменять /etc/locale.gen, раскомментирование или добавление локалей, которые вы хотите сгенерировать. Затем запустите sudo locale-gen,

Вы можете проверить, что локали добавляются с помощью locale -a, который покажет все локали.


2
2018-01-20 19:12



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


  1. Проверьте, какие локали уже поддержанный в вашем дистрибутиве. Открыть или cat файл /usr/share/i18n/SUPPORTED и скопируйте желаемый язык, который нужно добавить.
  2. на терминале введите sudo locale-gen locale_name,

    Например sudo locale-gen de_DE.iso885915@euro

  3. войти sudo update-locale

  4. Проверьте, установлен ли языковой стандарт с locale -a


0
2018-04-14 13:50





Я делал то же самое, что и для использования системы локали без перезагрузки или выхода из системы.

Сначала загрузите языковой пакет:

sudo apt-get install language-pack-ru-base

Затем проверьте, какие версии поддерживаются:

less /usr/share/i18n/SUPPORTED | grep ru_RU

Теперь примените результат (почти всегда используйте версию UTF-8 для любого языка!):

echo 'ru_RU.UTF-8 UTF-8' | sudo tee /var/lib/locales/supported.d/local
sudo dpkg-reconfigure locales

Наконец, обновите файл по умолчанию, отправьте его, а затем выполните:

echo 'LANG=ru_RU.UTF-8' | sudo tee /etc/default/locale

применить изменения в системе:

. /etc/default/locale
LANGUAGE=ru_RU.UTF-8

и проверьте свои результаты:

locale

-2
2017-12-11 19:25



Примечание. Если вы работаете регулярный Ubuntu и не Ubuntu, изменения не переносятся за консоль (если вы решили открыть новую вкладку или закрыть терминал) до следующего входа в систему. Однако, используя сервер Ubuntu, вы, как правило, должны войти в систему, чтобы открыть новую консоль, так что это не имеет значения. - mchid
Этот вопрос - tagget с сервер, И кто и зачем сказал это, объясните, пожалуйста. - Nikos Alexandris