网站搜索

如何修复 CentOS 8 中“无法设置区域设置,默认为 C.UTF-8”


您是否在 CentOS 8RHEL 8 中遇到过警告/错误“无法设置区域设置,默认为 C.UTF-8”?如果是,那么本文将介绍如何修复此错误。请注意,本文也适用于基于 RHEL 8 的任何操作系统。

区域设置是一组基本系统参数,用于定义用户的语言、区域以及用户希望在用户界面中看到的任何特殊变体首选项等内容。

推荐阅读:如何在 Linux 中更改或设置系统区域设置

在 POSIX 平台(例如 Linux 和其他类 Unix 操作系统)上,区域设置标识符由 ISO/IEC 15897 定义。例如,使用 UTF-8 编码的美国英语为 en_US.UTF-8

以下是显示运行 dnf 或 yum 命令时出现的警告/错误的屏幕截图,如图所示。

要设置系统区域设置,请使用 localectl 命令。例如,如果您想要使用 UTF-8 编码的英语 - UNITED STATES OF AMERICA (US),请运行以下命令。

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-代码你想要的)。

dnf install glibc-langpack-en

使用上述过程,我们成功修复了 CentOS 8RHEL 8 中的“无法设置区域设置,默认为 C.UTF-8” >。希望这对你也有用,否则。通过下面的评论表向我们提供反馈。