Linux下修改系統編碼的操作記錄

散盡浮華發表於2016-12-19


Linux系統安裝後,發現中文顯示亂碼。因為系統編碼為en_US.UTF-8,應改為支援中文的編碼(即zh_CN.UTF-8)
操作記錄如下:

0)系統必須安裝中文語言包才行
[root@xqsj-beta ~]# yum -y groupinstall chinese-support

1)檢查linux的系統編碼
檢查linux的系統編碼,確定系統是否支援中文。在linux系統的終端中輸入命令:locale,就會看到列印出的系統編碼資訊。
[root@xqsj-beta ~]# locale
LANG=en_US.UTF-8                       
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

修改系統編碼,使其支援中文
方法一:
(2)編輯系統編碼檔案
[root@xqsj-beta ~]# vim /etc/sysconfig/i18n
LANG="zh_CN.UTF-8"
[root@xqsj-beta ~]# source /etc/sysconfig/i18n

再次檢視系統編碼,發現已改為支援中文的編碼
[root@xqsj-beta ~]# locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=

方法二
(3)在系統的環境變數檔案終加入路徑變數的宣告,對整個系統起作用
[root@xqsj-beta ~]# vim /etc/profile               //在檔案底部新增如下內容
........
LC_ALL="zh_CN.UTF-8"
export LANG="zh_CN.UTF-8"
[root@xqsj-beta ~]# source /etc/profile
[root@xqsj-beta ~]# locale
---------------------------------------------------------------------------------------------
發現在Windows下編輯的中文,在Linux下顯示為亂碼的問題。
這是由於Windows的預設編碼為GBK,而Linux的預設編碼為UTF-8。
若要解決此問題,需要修改Linux的預設編碼為GBK。
[root@xqsj-beta ~]# vim /etc/sysconfig/i18n
LANG="zh_CN.GBK"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh"
SYSFONT="latarcyrheb-sun16"
[root@xqsj-beta ~]# source /etc/sysconfig/i18n
[root@xqsj-beta ~]# locale

或者直接修改系統環境變數
[root@xqsj-beta ~]# vim /etc/profile
......
export LC_ALL="zh_CN.GBK"
export LANG="zh_CN.GBK"
[root@xqsj-beta ~]# source /etc/profile
[root@xqsj-beta ~]# locale

相關文章