首页/系统/信创系统运维速查/中文环境与 locale 排查
迁移适配65 条

中文环境与 locale 排查

中文乱码与排序异常先查 locale 三层:系统 locale 生成、会话 LANG/LC_*、JVM file.encoding;三层对齐 UTF-8 再谈应用适配。

信创系统运维速查系统更新于 2026-10-12

检查与设置

检查与设置
locale
locale -a | grep -i zh_CN
localectl status 2>/dev/null | head
export LANG=zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8

JVM 场景

JVM 场景
java -XshowSettings:properties -version 2>&1 | grep -iE 'encoding|locale'
java -Dfile.encoding=UTF-8 -jar app.jar
「系统 UTF-8 但界面乱码」多为应用或 JVM 自带其他编码设置:逐层看实际生效值。

易错点

  • LC_ALL 优先级高于 LANG 与 LC_*:排查先看它
  • 缺 zh_CN.UTF-8 时先补齐语言包生成 locale,再改应用

数据来源与参考

  • man 7 locale
  • OpenJDK 文档(file.encoding)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌