红联Linux门户
Linux帮助
当前位置: 红联Linux门户 > Debian

Debian系统的locale

发布时间:2007-08-19 00:19:13来源:红联作者:eaxbiopl
  一直以来对linux的locale比较困惑,昨晚安装的kde又中文显示有问题。正好乘此次机会彻底搞明白locale的设置。

  locale的命名规则为<语言>_<地区>.<字符集编码>,如zh_CN.UTF-8,zh代表中文,CN代表大陆地区,UTF-8表示字符集。

  "C"是系统默认的locale,"POSIX"是"C"的别名。所以当我们新安装完一个系统时,默认的locale就是C或POSIX。

  Debian 并不在系统中编译所有可用的 locales,检查 /usr/lib/locale 确定哪个 locales(除了默认的“C”)已在系统上编译安装。

  在Debian中安装locales的方法如下:
  通过apt-get install locales命令安装locales包

  安装完成locales包后,系统会自动进行locale配置,你只要选择所需的locale,可以多选。最后指定一个系统默认的locale。这样系统就会帮你自动生成相应的locale和配置好系统的locale。

  增加新的locale也很简单,用dpkp-reconfigure locales重新配置locale即可。

  我们也可手动增加locale,只要把新的locale增加到/etc/locale.gen文件中,再运行locale-gen命令即可生成新的locale。再通过设置上面介绍的LC_*变量就可设置系统的locale了。下是一个locale.gen文件的样例。

  # This file lists locales that you wish to have built. You can find a list
  # of valid supported locales at /usr/share/i18n/SUPPORTED. Other
  # combinations are possible, but may not be well tested. If you change
  # this file, you need to rerun locale-gen.
  #

  zh_CN.GBK GBK

  zh_CN.UTF-8 UTF-8

  要在Shell中正常显示系统的中文提示信息和支持中文输入。LANG和shell的编码配置需一致,并安装有中文locale。如:LANG和 shell的编码都配置成zh_CN.utf8,并安装有zh_CN.utf8这个locale。如果shell和LANG配置不同,则中文显示乱码;如 果LANG里设置的locale没有安装,则不能显示系统的中文提示信息,只会显示英文提示信息。
文章评论

共有 0 条评论