![启动时的区域设置问题](https://linux22.com/image/1201501/%E5%90%AF%E5%8A%A8%E6%97%B6%E7%9A%84%E5%8C%BA%E5%9F%9F%E8%AE%BE%E7%BD%AE%E9%97%AE%E9%A2%98.png)
我正在运行 Ubuntu 20.04.6 LTS
我有一个脚本可以执行以下任务:
locale >> /root/testlocal.txt
由 rc.local 运行,提供以下信息
LANG=en_GB.utf8
LANGUAGE=
LC_CTYPE="en_GB.utf8"
LC_NUMERIC="en_GB.utf8"
LC_TIME="en_GB.utf8"
LC_COLLATE="en_GB.utf8"
LC_MONETARY="en_GB.utf8"
LC_MESSAGES=POSIX
LC_PAPER="en_GB.utf8"
LC_NAME="en_GB.utf8"
LC_ADDRESS="en_GB.utf8"
LC_TELEPHONE="en_GB.utf8"
LC_MEASUREMENT="en_GB.utf8"
LC_IDENTIFICATION="en_GB.utf8"
LC_ALL=
请注意 LANGUAGE 为空,且 LC_MESSAGES=POSIX
这导致一个 webapp(也是由机器上运行的 rc.local 启动的)打印 $ 而不是 £
当我从根目录运行区域设置时,它们都设置为 en_GB.utf8。
我的解决方法是在 rc.local 顶部运行一个脚本,该脚本执行以下操作:
update-locale LANGUAGE=en_GB.UTF-8 LC_MESSAGES="en_GB.UTF-8"
这似乎可以解决问题,就像手动停止和启动应用程序一样。有什么需要配置才能使此解决方法不再必要吗?