Ubuntu Locale配置问题根源解决之道
敲locale把输出的那些环境变量拷贝到/etc/environment里面,自己手工修改。可以设的值就是/var/lib/locales/supported.d/local里面包括的值,或者生成在/usr/lib/locale/里面的文件夹名称。
1. No such file 用locale命令的时候就会出现
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
2. perl warning, please check if supported 在apt-get install/remove的时候出现
perl: warning: Please check that your locale settings: LC_ALL = (unset), LC__FASTMSG = "true", LC_MESSAGES = "", LANG = "zh_CN" are supported and installed
相关命令
locale 查看现在的locale配置环境
localepurge 配置需要的locale(如果没有这个命令,用apt-get install localepurge安装)
locale- gen 生成需要的locale文件,
参数 --purge用来删除所有旧的配置,在出现问题时很有用
相关的文件
其实在man locale-gen和man locale里面都讲到了,我还在网上查资料,浪费时间,悔之晚矣……
/usr/share/i18n/SUPPORTED
List of supported values (and their associated encoding) for the
locale name. This representation is recommended over
--all-locales one, due being the system wide supported values.
/var/lib/locales/supported.d/*
List all locales to generate. File format is similar to /usr/share/i18n/SUPPORTED.
/usr/lib/locale//LC_*
Compiled locale data .这些就是用locale-gen编译出的locale文件了
/etc/environment 编辑这个文件可以手动配置locale环境变量 ,LC_CTYPE之类的,具体有哪些可配置的变量,都是什么含义,用man locale就能看到了