如何摆脱命令行上的多种语言混合?

如何摆脱命令行上的多种语言混合?

我从“netinst”CD 安装了一个干净的 Debian 9 Stretch 系统。默认语言环境设置为de_DE.UTF-8。某个用户空间工具(即mkfs.ext4)向我提供了混合语言的消息:

/dev/sdb7 hat ein ext4-Dateisystem mit Namen „tmp-rofs“
    auf Tue Jul 18 16:51:41 2017
 erzeugtProceed anyway? (y,N)

确认不是通过“y”而是通过“j”(德语“ja”)来识别。

顺便说一句,这是一种奇怪的德语语法 - 介词“auf”从不与日期一起使用。连接词“erzeugtProceed”也很奇怪。

如您所见,除了日期格式和最后一个问题外,基本信息都是用德语给出的(如预期的那样)。

我运行了dpkg-reconfigure locales另外添加en_US.UTF-8语言环境(因为我要使用不同的语言环境编写脚本)并de_DE.UTF-8再次设置默认语言环境,但是行为并没有改变。

我的配置可能有什么问题/我该如何修复它?目的是获得干净的本地化(德语)信息。


编辑:附加信息

有 2 个与语言环境相关的环境变量设置:

LANG=de_DE.UTF-8
GDM_LANG=de_DE.utf8

的内容/etc/default/locale为:

#  File generated by update-locale
LANG=de_DE.UTF-8

locale -a给我:

C
C.UTF-8
de_DE.utf8
en_US.utf8
POSIX

tty 控制台和 GUI 终端都具有相同的行为。


实验中,我尝试手动设置一些环境变量:

export LC_MESSAGES='de_DE.UTF-8'
export LC_RESPONSE='de_DE.UTF-8'
export LC_TIME='de_DE.UTF-8'
mkfs.ext4 /dev/sdb7 -L 'tmp-rofs'

但同样的问题仍然存在。

答案1

您可以在以下位置找到有关此内容的有用信息Debian wiki - 区域设置

手动

编辑文件 /etc/locale.gen 并添加您的区域设置(每行一组),例如:

 de_DE.UTF-8 UTF-8
 de_DE ISO-8859-1
 de_DE@euro ISO-8859-15

支持的语言环境列在 /usr/share/i18n/SUPPORTED 中。

  • 运行命令 locale-gen

  • 运行命令 locale -a 来验证可用语言环境列表;注意拼写会发生变化。

  • 如果您已升级到 Lenny,并且在 >/etc/environment 中剩余了 LANG=... 内容,则应将其注释掉。

  • 要将新设置应用于您的程序,请注销并重新登录。

以下环境变量会影响系统的区域设置相关行为:

- LANG Determines the default locale in the absence of other locale related environment variables
- LANGUAGE
- LC_ADDRESS Convention used for formatting of street or postal addresses
- LC_ALL High precedence override for locale specific behaviour (overrides all other locale variables)
- LC_COLLATE Collation order
- LC_CTYPE Character classification and case conversion
- LC_MONETARY Monetary formatting
- LC_MEASUREMENT Default measurement system used within the region
- LC_MESSAGES Format of interactive words and responses
- LC_NUMERIC Numeric formatting
- LC_PAPER Default paper size for region
- LC_RESPONSE Determines how responses (such as Yes and No) appear in the local language
- LC_TELEPHONE Conventions used for representation of telephone numbers
- LC_TIME Date and time formats 

答案2

在翻遍了互联网之后,我发现这个包中确实似乎有一个错误e2fsprogs

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=856586

一段时间内我不会接受我自己的答案,以便人们有机会提出一些错误修复。第一个(或最干净的)解决我的问题的解决方案将被接受。

相关内容