我目前有这些语言环境:

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语言环境安装到服务器?

#1 楼



检查支持哪些语言环境:

locale -a



添加所需的语言环境(例如ru):

sudo locale-gen ru_RU
sudo locale-gen ru_RU.UTF-8



运行此更新命令:

sudo update-locale 




评论


...然后运行sudo update-locale

–贾斯汀部队
13年3月14日在23:05

如果不支持该怎么办?

–金伯
2013年6月14日9:22

您能否继续说明为什么同时需要ru_RU和ru_RU.UTF-8?我对语言环境不太了解。

– Sopalajo de Arrierez
15年3月3日在22:16

如果您使用php5-fpm,则需要sudo服务php5-fpm重新启动

– Stalinko
15年4月26日在8:17

由于某种原因,命令sudo locale-gen ru_RU.UTF-8对我无济于事。另一种选择是,可以手动编辑文件vi /etc/locale.gen以取消注释所需的语言环境。

–教父
18年8月6日在12:34

#2 楼

我会选择另一条路线,那就是IMO更适合Ubuntu风格。使用提供的软件包。每个语言环境都有相应的软件包,它们可以为您完成所有工作...无需编辑/ var文件,我一直认为这些文件不是要手动编辑的。 >
其中XX代表语言代码。安装语言还将安装所有特定于国家/地区的变体(例如,安装language-pack-it将安装it_CH.utf8和it_IT.utf8,为NL安装将安装nl_AW,nl_AW.utf8,nl_BE.utf8和nl_NL.utf8 )。

评论


我认为这是最好,最“ Ubuntu”的方式

–玛丹卡(Luke Madhanga)
15年3月13日在21:30

但是生成语言环境会提供诸如本地化日期格式,小数点分隔符,字符集等之类的东西。语言包还提供翻译,这不一定是故意的。

–奥斯卡·伯格伦(Oskar Berggren)
15年6月17日在22:58

同意奥斯卡。如果您认为此安装是针对服务器的,则更加强大-无论如何,大多数界面都是英文的。

–igorsantos07
2015年9月22日下午6:16

我担心这也会改变当前的语言环境,但是没有。一切都很好。看起来是最好的方法imo。我特别不需要“翻译或其他内容”,但是如果出于某些原因特别使用语言环境,我希望它是完整的。

– Balmipour
16-10-28在10:20

#3 楼



检查支持哪些语言环境:

less /usr/share/i18n/SUPPORTED



将语言环境添加到生成的列表中

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



重新生成列表(它将调用语言环境生成...)

 sudo dpkg-reconfigure locales




评论


我必须添加第二列:在Ubuntu 15.04上,echo ru_RU.UTF-8 UTF-8 >> /var/lib/locales/support.d/local(UTF-8发生两次)。否则,它将起作用。

– jfs
2015年10月27日在21:45



#4 楼

我发现locale-gen是您的朋友。
(例如(添加希伯来语utf8):

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


您甚至可以像这样重新整理:

root@world:~# dpkg-reconfigure locales


并检查您是否做得好:

root@world:~# locale -a


我发现此解决方案比添加方法更简单填充到文本文件,即使它确实如此。

#5 楼

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


评论


这对我有用。就我而言,我在使用en_GB语言环境时遇到了严重的输入错误。我已经更新了/var/lib/locales/supported.d/mintlocale文件,使其包含以下行:en_GB UTF-8和en_GB.UTF-8 UTF-8(缺少额外的UTF-8)。

– Samir Aguiar
19-2-15在20:28



#6 楼

使用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:~$ 


#7 楼

修改/etc/locale.gen,取消注释或添加您希望生成的语言环境。然后运行sudo locale-gen

您可以检查locale -a是否添加了语言环境,从而显示所有语言环境。

评论


哦,我的locale-gen创建了吨位的语言环境,而忽略了locale.gen文件。因此,请谨慎使用此建议。

– Dzenly
17年8月31日在2:41

#8 楼


检查您的发行版中已支持哪些语言环境。打开或cat文件/usr/share/i18n/SUPPORTED并复制要添加的所需语言环境。

在终端上输入sudo locale-gen locale_name

例如sudo locale-gen de_DE.iso885915@euro

输入sudo update-locale
检查语言环境是否与locale -a一起安装


#9 楼

无法发表评论,所以我必须将此添加为答案。

我需要在Ubuntu中添加特殊类型的语言环境sr_RS.utf8@latin。

命令:

sudo locale-gen sr_RS.utf8@latin


不会将@latin添加到可用的语言环境。
为了成功,该命令应如下所示:

sudo locale-gen sr_RS@latin.utf8


命令:

sudo locale -a


现在显示:

sr_RS
sr_RS@latin
sr_RS.utf8
sr_RS.utf8@latin


请注意locale -a结果与locale-gen命令添加方法之间的语法差异。

#10 楼

对于不支持我需要的语言环境的小型服务器(locale -a未列出它),我要做的就是运行
 sudo dpkg-reconfigure locales
 

,其中提供了基于文本的对话框,我可以从中进行选择(上一页/下一页,上一页/下一页,要选择的空间,跳至OK(确定)和Enter(输入)以进行保存)。它会自动重新生成语言环境。
如其他人所述,您将需要重新启动需要新语言环境的任何进程。