參考文獻
http://wiki.ubuntu.org.cn/%E4%BF%AE%E6%94%B9locale
強烈建議
ubuntu下面不要使用中文編碼,就是不要使用zh_CN.utf8,建議使用英文編碼方式,只要安裝有ut8編碼的話,是可以正確識別中文的。
設置方式如下,只需要設置LANG,其他的會自動設置。注意:修改以后需要重啟才能生效,否則再次運行locale會發現沒有變化。
enadmin@cgnmon:/etc/default$ vi /etc/default/locale LANG="en_US.UTF-8" LANGUAGE="en_US:en"
可以參考:http://codelife.me/blog/2012/12/04/change-default-locale-in-ubuntu-server-12-dot-10/
問題
使用securecrt去連接ubuntu服務器,打開smokeping的配置文件,發現里面顯示的都是亂碼了。按照文獻2種前半段的介紹進行配置,將securecrt的字符從default設置為UTF-8,但是最后發現還是不行。
后來找了一些資料,說是要設置/etc/default/locale,但是我發現我的locale設置沒有問題,已經設置成zh_CN.utf8了。
# vi /etc/default/locale LANG="zh_CN.UTF-8" LANGUAGE="zh_CN:zh" LC_NUMERIC="zh_CN" LC_TIME="zh_CN" LC_MONETARY="zh_CN" LC_PAPER="zh_CN" LC_NAME="zh_CN" LC_ADDRESS="zh_CN" LC_TELEPHONE="zh_CN" LC_MEASUREMENT="zh_CN" LC_IDENTIFICATION="zh_CN" LC_ALL="zh_CN" ~
后來在文獻1種找到相關資料,通過locale -a命令查看當前的字符集,發現沒有zh_CN.utf8,只有zh_CN和zh_CN.gb2312
# locale -a C C.UTF-8 en_US.utf8 POSIX zh_CN zh_CN.gb2312
找到問題所在,我就按照參考文獻1的方法進行安裝
qii@ubuntu:~$ cd /usr/share/locales qii@ubuntu:/usr/share/locales$ ls install-language-pack remove-language-pack qii@ubuntu:/usr/share/locales$ sudo ./install-language-pack zh_CN.UTF-8 Generating locales... zh_CN.UTF-8... done Generation complete. dpkg-trigger: dpkg-trigger must be called from a maintainer script (or with a --by-package option)
重啟以后再去編輯smokeping的配置文件,發現正常顯示中文。