macOS和Linux环境locale对齐

我在初次安装完成 Ubuntu Linux server版之后,在macOS客户端 ssh服务 访问时会提示:

en_US.UTF-8 提示
-bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory
-bash: warning: setlocale: LC_COLLATE: cannot change locale (en_US.UTF-8): No such file or directory

这个提示其实和 Python运行环境locale 是一样的,也就是服务器端因为精简安装,没有安装 locale-gen 也没有设置 en_US.UTF-8 ,所以首先需要安装 locales 软件包:

安装locales软件包
apt install locales

然后执行 locale-gen 生成对应的locles:

执行 locale-gen 来生成对应locales
echo "LC_ALL=en_US.UTF-8" >> /etc/environment
echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf
locale-gen en_US.UTF-8