Иногда я получаю ошибки локали, и я пытался запустить локализацию dpkg -configure для решения проблемы. Вот вывод:
:~$ sudo dpkg-reconfigure locales
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = "en_US.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_CTYPE to default locale: No such file or directory
/usr/bin/locale: Cannot set LC_ALL to default locale: No such file or directory
Generating locales (this might take a while)...
en_US.UTF-8... done
Generation complete.
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = "C"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = "C"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Я искал / usr / bin / locale, но он не существует в моей системе. Нужно ли его создавать? Что я там положу?
Также я нашел связанный вопрос, который говорит, что причина его проблемы была в файле sshd_config. Файл имел следующую запись:
AcceptEnv LANG LC_*
Я в основном обеспокоен тем, что это может вызвать проблемы для моего VPS, в противном случае, если это не будет чем-то важным, я буду рад проигнорировать проблему. Что я должен делать? Благодарность!
localization
debian-squeeze
blogjunkie
источник
источник
locale-gen fr
построит все локали fr (fr_BE, fr_CH и т. Д.) Решит проблему. Возможно, попробуйтеlocale-gen en
Ответы:
первый:
тогда:
и знаменитый:
Это освобождает систему локалей, затем переустанавливает локали и понижает libc6 с 2.19 до 2.13, что является проблемой. Затем снова настраивает локали.
источник
locales
без пониженияlibc6
.Если это происходит при SSHing на вашем компьютере, но не на консоли, попробуйте перенастроить ваш ssh-клиент (на вашем локальном компьютере). Например, в Mac OS X отредактируйте / private / etc / ssh_config и закомментируйте
Благодаря посту Бредмена на доске объявлений Rasberry Pi .
источник
У меня была эта проблема в течение долгого времени, и все обычные советы о dpkg -configure locales, locale-gen и т. Д. Не помогли. Поэтому я немного поигрался с переменными среды, и обнаружил, что система работает с
LC_CTYPE
переменной среды!UTF-8
не является допустимым значением для него. Установка этоen_US.UTF-8
исправить.Чтобы сделать изменение постоянным, я побежал
который пишет в
/etc/default/locale
. Затем перезагрузите систему, чтобы она полностью вступила в силу.источник
perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LC_CTYPE = "UTF-8", LANG = "en_US.UTF-8" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C"). *** update-locale: Error: invalid locale settings: LC_CTYPE=en_US.UTF-8
Я видел это раньше на старых установках Debian, и, несмотря на раздражение, я никогда не видел, чтобы это вызывало проблемы.
Если
отсутствует, попробуйте (как root):
это должно установить libc-bin, предоставив / usr / bin / locale.
Эта строка AcceptEnv в вашем sshd_config довольно стандартна и не должна быть причиной вашей проблемы здесь.
источник
dpkg-reconfigure locales
снова. Никакой радости :(locale -a
и что в/etc/default/locale
?locale -a
дает мне: locale: Невозможно установить LC_CTYPE в качестве локали по умолчанию: Нет такого файла или каталога C en_US.utf8 POSIXapt-get install --reinstall locales
? Затем, для хорошей меры, попробуйтеlocale-gen
, который восстановит любые локали, которые не закомментированы/etc/locale.gen
(у вас должна быть строка какen_US.UTF-8 UTF-8
). После этого посмотрите,locale -a
работает ли .Сделал следующее, как Manoj, но добавил его в # ~ / .bashrc:
источник
Если вы получаете ошибки, когда ssh'ing обращается к удаленной системе, и не хотите изменять удаленную систему (например, изменяя sshd_config), вы можете сделать следующее в вашей локальной системе (при условии, что bash)
а потом
ssh user@remote
источник
На моей новой установке Debian (минимальной) локали полностью отсутствовали. Хотя его установка (
aptitude install locales
) и запускlocale-gen
сделали свое дело. Так что, ребята, делайте, как упоминал Чед Феллер, ноlocales
сначала проверьте, установлен ли пакет .источник
Если вы отключили аутентификацию PAM для ssh in
/etc/ssh/sshd_config
(UsePAM no
), ответственная конфигурация в/etc/pam.d/login
не эффективна:session required pam_env.so readenv=1 envfile=/etc/default/locale
Результат:
/etc/default/locale
кажется, не имеет никакого эффекта.Таким образом, вы должны настроить свой клиент для отправки переменных LANG или экспорта переменных env в сценарии профиля, например
~/.profile
,~/bashrc
и т. Д.Больше: http://wiki.debian.org/Locale#Standard
источник
Я использовал немецкий VPS и не мог изменить локаль, потому что не было установлено никакого языкового пакета для английского языка.
После установки я смог окончательно поменять локаль
источник
в системах Debian это решит вашу проблему:
apt-get install locales-all
в системах Ubuntu установите специальный языковой пакет, например:
apt-get install language-pack-en
locale-gen en_US.UTF-8
источник
Mac подключается к новой версии Debian 10. Ни один из ответов, найденных в Google Stack Exchange, не помог. Вот что сделал (и был простым и надежным тоже):
Запустите это на вашем Debian, и он не позволит подключенному терминалу Mac испортить локали сервера ( подробнее ).
В качестве бонуса это может даже улучшить безопасность сервера.
источник