Debian系統的locale
一直以來對linux的locale比較困惑,昨晚安裝的kde又中文顯示有問題。正好乘此次機會徹底搞明白locale的設定。 (以下内容摘自man.ChinaUnix.net) //******************************************************************** 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也很簡單,用dpkg-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沒有安裝,則不能顯示系統的中文提示資訊,隻會顯示英文提示資訊。