У меня очень упрямая, хорошо известная ошибка локали в Ubuntu 9.10:
perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LC_TIME = "custom.UTF-8", LANG = "en_US.UTF-8"
Пробовал следующее:
LANG=en_US.UTF-8
и LC_ALL=en_US.UTF-8
в / etc / environmentapt-get install --reinstall locales
(ошибка: perl: предупреждение: возврат к стандартному языку ("C"). / usr / bin / mandb: невозможно установить языковой стандарт; убедитесь, что $ LC_ * и $ LANG верны)sudo dpkg-reconfigure locales
. Результат: невозможно установить для LC_ALL локаль по умолчанию: нет такого файла или каталога, а затем обновляются локали для всех локалей, включая en_US.UTF-8sudo locale-gen
успешно обновляет все локали, включая en_US.UTF-8sudo locale-gen un_US en_US.UTF-8
не дает ни ошибки, ни другого вывода/etc/default/locale
это говорит LANG="en_US.UTF-8"
echo $LANG
дает en_US.UTF-8/var/lib/locales/supported.d/local
говорит en_US.UTF-8 UTF-8locale -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_IN en_NG en_NZ.utf8 en_PH.utf8 en_SG.utf8 en_US.utf8 en_ZA.utf8 en_ZW.utf8 POSIX
Так что ... у меня почти не осталось вариантов, о которых я могу думать. Кто-нибудь знает ??
Спасибо!
Вы также можете попробовать установить locales-all
package, чтобы никогда больше не создавать какие-либо локали.
Была такая же проблема и нашла решение. Вы должны воссоздать custom.UTF-8
locale def ("пользовательский" файл, вероятно, существует, потому что вы изменили формат даты или времени). Бегать
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
Надеюсь это поможет!
Я решил ту же проблему на сервере Ubuntu 10.04 следующим образом:
root@hostname:~# export LANGUAGE=en_US.UTF-8
root@hostname:~# export LANG=en_US.UTF-8
root@hostname:~# export LC_ALL=en_US.UTF-8
root@hostname:~# locale-gen en_US.UTF-8
root@hostname:~# dpkg-reconfigure locales
Надеюсь, это поможет.
Я решил ту же проблему на сервере Ubuntu 10.04 следующим образом:
$ export LANGUAGE=en_US.UTF-8
$ export LANG=en_US.UTF-8
$ export LC_ALL=en_US.UTF-8
$ sudo locale-gen en_US.UTF-8
$ sudo dpkg-reconfigure locales
Чтобы изменения были постоянными, вам нужно добавить туда переменную в /etc/environment
$ sudo vi /etc/environment
LC_TIME = "custom.UTF-8"
Это выглядит довольно странно, должно быть "en_US.UTF-8"
не "custom.UTF-8"
Вы должны grep /etc
чтобы увидеть, откуда это.