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
#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(输入)以进行保存)。它会自动重新生成语言环境。
如其他人所述,您将需要重新启动需要新语言环境的任何进程。
评论
...然后运行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