Ubuntu

修復頑固的“設置語言環境失敗。”

  • January 27, 2017

我在 Ubuntu 9.10 上有一個非常頑固、眾所周知的語言環境錯誤:

perl:警告:設置語言環境失敗。
perl:警告:請檢查您的語言環境設置:
語言=(未設置),
LC_ALL =(未設置),
LC_TIME = "custom.UTF-8",
LANG = "en_US.UTF-8"

嘗試了以下方法:

  • 添加LANG=en_US.UTF-8LC_ALL=en_US.UTF-8/etc/environment
  • 執行apt-get install --reinstall locales(錯誤:perl:警告:回退到標準語言環境(“C”)。/usr/bin/mandb:無法設置語言環境;確保 $ LC_* and $ 朗是正確的)
  • 執行sudo dpkg-reconfigure locales。結果:無法將 LC_ALL 設置為預設語言環境:沒有這樣的文件或目錄,然後更新語言環境所有語言環境,包括 en_US.UTF-8
  • sudo locale-gen成功更新所有語言環境,包括 en_US.UTF-8
  • sudo locale-gen un_US en_US.UTF-8沒有錯誤也沒有其他輸出
  • 裡面/etc/default/localeLANG="en_US.UTF-8"
  • echo $LANG給出 en_US.UTF-8
  • /var/lib/locales/supported.d/local說 en_US.UTF-8 UTF-8
  • locale -a給我:
C
en_AG
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
並且在
en_NG
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZW.utf8
POSIX

那麼好吧……我幾乎沒有我能想到的選擇。有人知道嗎??

謝謝!

遇到了同樣的問題並找到了解決方案。您必須重新創建custom.UTF-8語言環境定義(“自定義”文件可能存在,因為您更改了日期或時間格式)。跑

sudo localedef -f UTF-8 -i custom custom.UTF-8

另一種方法是將語言環境添加到您要dpkg-reconfigure locales為您配置的語言環境中。在 Debian 上:

echo 'custom.UTF-8 UTF-8' |sudo tee -a /etc/locale.gen
sudo dpkg-reconfigure locales

在 Ubuntu 上:

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

希望這可以幫助!

引用自:https://serverfault.com/questions/231025