ウェブサイト検索

CentOS 8で「ロケールの設定に失敗し、C.UTF-8にデフォルト設定されました」を修正する方法


CentOS 8やRHEL 8で「ロケールの設定に失敗しました。C.UTF-8にデフォルト設定します」という警告/エラーに遭遇したことはありますか?もしそうであれば、この記事ではこのエラーの修正方法について説明します。この解決策は、RHEL 8ベースの他のオペレーティングシステムでも機能することに注意してください。

ロケールとは、ユーザーの言語、地域、およびユーザーがユーザーインターフェースで見たい特別なバリアントの好みなどを定義する基本的なシステムパラメータのセットです。

おすすめの読書: Linuxでシステムロケールを変更または設定する方法

Linuxやその他のUnix系オペレーティングシステムなどのPOSIXプラットフォームでは、ロケール識別子はISO/IEC 15897によって定義されています。例えば、アメリカ合衆国(US)の英語はUTF-8エンコーディングを使用しており、これはen_US.UTF-8です。

以下は、示されたようにdnfまたはyumコマンドを実行したときの警告/エラーを示すスクリーンショットです。

システムロケールを設定するには、localectl コマンドを使用します。たとえば、英語 - アメリカ合衆国 (US) をUTF-8 エンコーディングで使用したい場合は、次のコマンドを実行します。

# localectl set-locale LANG=en_US.UTF-8

次に、次のコマンドを実行してシステムロケールが設定されているか確認してください。

# localectl
dnf install @postgresql

システムロケールを設定した後でも警告が続くことに注意してください。これは言語パックが不足していることを示しています。インストールするには、次のセクションに進んでください。

特定の言語パックがシステムに欠けている場合、上記のエラーを修正するためにそれをインストールする必要があります。ただし、すべてのロケールを含むglibc-all-langpacksパッケージによって提供されるすべての言語パックをインストールできます。

# dnf install langpacks-en glibc-all-langpacks -y

あるいは、localesを個別にインストールしたい場合、システムへのパッケージインストールの影響を小さくするために、次のコマンドを実行します(enを希望するlocale-codeに置き換えてください)。

# dnf install glibc-langpack-en

上記の手順を使用して、CentOS 8 または RHEL 8 での ロケールの設定に失敗しました。C.UTF-8 にデフォルト設定します を修正することができました。これがあなたにも効果があることを願っていますが、そうでない場合は、下記のコメントフォームを通じてフィードバックをお寄せください。

関連記事: