ロケールの問題があるため、正常に動作する解決策が見つかりません!
すべてのチュートリアルは次のようになります。Debian でのロケール設定失敗に関する Perl 警告。
これはロケールの問題です。
pi @ server [~]:
$ > sudo deluser --remove-home cm22
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = "en_GB.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Looking for files to backup/remove ...
Removing user `cm22' ...
Warning: group `cm22' has no more members.
Done.
どうすれば解決できますか?
答え1
Debian は、直接使用できない形式でロケール定義を提供し、ネットワーク帯域幅を節約します。ここで、ロケール間で共有される情報(たとえば、非常によく似たもの)はen_US
単一のen_CA
ファイルに保存されます。使用可能なロケール定義は、各コンピューターで生成する必要があります。 CPU時間とディスク容量を節約するために、システム管理者が要求したロケールのみが作成されます。
生成するロケールセットを設定するには、rootとして次のコマンドを実行します。
dpkg-reconfigure locales
または、ファイルを編集し、目的の/etc/locale.gen
ロケールに対応する行をコメントアウトします(で始まる行は#
コメント行です)。たとえば、ロケールが必要な場合は、en_GB.UTF-8
次の行を含める必要があります。
en_GB.UTF-8 UTF-8
編集後に/etc/locale.gen
実行して、locale-gen
ロケール定義を再生成します。
UTF-8
設定した値がLC_CTYPE
正しくありません。有効なロケール名(たとえば)を使用する必要がありますLC_CTYPE=en_GB.UTF-8
。設定しないままにしておくことができますLC_CTYPE
。デフォルト値はですLANG
。しかし、私は好む未設定のままにLANG
しておきます(実際にはデフォルトは英語に設定されており、他の言語を使用している場合は英語も設定する必要があります)。LC_CTYPE=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
LC_MESSAGES
答え2
明示的に設定していない場合は、次のように入力しますLC_CTYPE
。
export LC_CTYPE="en_US.UTF-8"
(en_US
を希望のLANG / CTYPE定義に置き換えます)
長いですが、次のように入力してください。
locale LC_CTYPE
現在の設定値が提供されます。
答え3
Raspbianのrawコピーでも同じ問題が発生しました。
export LC_ALL="en_US.UTF-8"
sudo dpkg-reconfigure locales