apt-get警告:不支持语言环境:en_US.utf8


55

每次我使用apt-get更新系统时都会收到此错误。这个错误是什么意思?关于如何纠正它的任何想法?(我正在运行Ubuntu 11.10)


1
问题显然是小写的“ utf8”。“ sudo update-locale LANG = en_US.UTF-8”应该可以解决问题。
stolsvik 2014年

我想补充一点,当在Mint上更新时禁用mysql服务(如果已安装)时,我也得到此“错误”。启用它后,问题消失。
not2qubit

Answers:


60

通常,此错误表示您可能已经在不同的语言(区域设置)之间进行了更改,并且某些原因导致此错误地错误。

您可以尝试重新生成您的语言环境列表

sudo dpkg-reconfigure locales

对我来说,结果是:

Generating locales...
  en_AG.UTF-8... done
  en_AU.UTF-8... done
  en_BW.UTF-8... done
  en_CA.UTF-8... done
  en_DK.UTF-8... done
  en_GB.UTF-8... done
  en_HK.UTF-8... done
  en_IE.UTF-8... done
  en_IN.UTF-8... done
  en_NG.UTF-8... done
  en_NZ.UTF-8... done
  en_PH.UTF-8... done
  en_SG.UTF-8... done
  en_US.UTF-8... up-to-date
  en_ZA.UTF-8... done
  en_ZM.UTF-8... done
  en_ZW.UTF-8... done
Generation complete.

然后使用以下方法重置您的区域设置:

sudo update-locale LANG=en_US.UTF-8

即在上面的输出中使用Locale值之一


39

就我而言,问题/usr/share/initramfs-tools/hooks/root_locale是希望在其中看到各个区域设置目录,/usr/lib/locale但是locale-gen默认情况下配置为生成存档文件。

我通过运行来修复它:

sudo locale-gen --purge --no-archive

3
译者:man locale-gen Matt的解释是正确的,由于libc的大小限制,所有语言环境不再位于单个目录中。“ locale-gen是一个程序,它读取文件/etc/locale.gen并为所选的本地化配置文件调用localedef。” 警告:不支持语言环境:xx_XX.utf8已由他的回答修正:) +1
xtrchessreal

对于基于Ubuntu Bionic的Linux Mint 19,此答案在2019年仍然有效。
Eiver
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.