-bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)

问题

  1. ssh刚登录连接时警告:

Failed to set locale, defaulting to C


2. linux运行命令时先报错:

Failed to set locale, defaulting to C

系统已经设置了默认地区_语言.字符集为en_US.UTF-8,但是在系统中没有定义对应的locale文件,只需要手动生成这个locale文件即可

解决:

查看当前系统的本地化设置信息

localectl status

查看系统当前语言

echo $LANG

查看locale库是否存在

ll /usr/lib/locale/locale-archive

删除locale库再重建一下

前提是你的文件系统中要有相应的数据文件。可以先cp备份一下

rm -f /usr/lib/locale/locale-archive

重新生成中文的locate文件

配置哪个语言就生成哪个语言文件

localedef -f UTF-8 -i en_US en_US.UTF-8

posted @ 2024-02-02 20:46  妙妙屋~  阅读(1595)  评论(0)    收藏  举报