В моей системе для переменной языка LC_CTYPE
задано недопустимое значение, что вызывает проблемы в системах Linux. Это установлено:
$ locale
LANG=
LC_COLLATE="C"
LC_CTYPE="UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=
LC_CTYPE=UTF-8
не является допустимым значением в Linux; например.:
$ ssh front1
Linux front1 3.16.0-7-amd64 #1 SMP Debian 3.16.59-1 (2018-10-03) x86_64
The programs included with the Debian GNU/Linux system are free software;
…
alex@front1 ~> perl
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"
are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US").
Но где LC_CTYPE
устанавливается в первую очередь? Его нет ни в одном файле в /etc
или $HOME
(я сделал sudo fgrep -ri LC_CTYPE /etc $HOME
).
Я использую iTerm2 в качестве терминального приложения.