setlocale: LC_CTYPE: cannot change locale (UTF-8)

新装的centos系统,有时会收到下面的警告信息。

warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory

这个警告表示无法设置 LC_CTYPE 区域设置为 UTF-8,原因是系统中不存在 UTF-8 区域数据。
LC_CTYPE 区域设置确定字符集和字符类别,默认为 C 区域设置。
要解决这个警告,可以使用下面的命令:

echo 'LANG="en_US.UTF-8"' > /etc/locale.conf
echo 'LC_ALL="en_US.UTF-8"' >> /etc/locale.conf

如果上面的方式仍然无法解决问题的话。可能是 CentOS 系统默认编码不是 UTF-8 引起的。这时可以尝试:

方法1:

  1. 修改 /etc/sysconfig/i18n 文件,设置 LANG=en_US.UTF-8
  2. 重新登录或重启系统使配置生效

方法2:

yum install glibc-common

这应该可以彻底解决这个警告。

Ubuntu中不确认是否可以。不过可以通过下面的方式解决

sudo apt-get install language-pack-en-base  #方式1
export LC_CTYPE=en_US.UTF-8  #方式2
end
  • 作者:kali(作者介绍)
  • 更新时间:2022-07-20 18:09
  • 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)
  • 转载声明:转载站点文章,请附上原文链接
  • 翻译声明:翻译文章会不严谨,请务必附上原文链接
  • 扫描阅读:扫描二维码,手机阅读该文章