Linux防健忘日誌No.72-Ubuntu 12.04 解決Server版中文檔名支援問題

因為最近改灌Ubuntu Server(之前是標準Ubuntu Desktop改來當Server)

所以遇到一個之前沒遇到的問題

 

就是中文語系的支援度問題

 

並不是apt-get install跑出方塊字這麼好解決的問題…

 

而是整個語系不對,導致下ll看檔案名稱,中文檔名就直接悲劇了

 

原因出在安裝的時候似乎沒有把中文設定為主語言

但地區卻設定了…

 

所以vi /etc/default/locale是可以看到

LANG=”zh_TW.UTF-8″
LANGUAGE=”zh_TW:zh”

這兩行是正確的設定在裏頭

 

但為何中文檔名還是場悲劇呢

 

找了又找,大多都只剩改這個檔案的做法

但今天這個檔案正常…那到底是哪裡出錯

 

檢查了language-pack-zh

相關的pack都有裝好

 

所以也排除支援度的問題,後來下locale才赫然發現區域變數全都是C…

 

也就是中性語言(講白一點其實就是英文…)

後來發現變數

LANG以及LANGUAGE

 

都是C…手動先export這兩個變成

LANG=”zh_TW.UTF-8″
LANGUAGE=”zh_TW:zh”

 

發現問題解決

 

但要怎麼確保每次登入都是對的呢…

若要套用在全區域使用者,可以到/etc/bash.bashrc這個檔案

(網路也有說要編輯/etc/environment,但據我的測試一點用都沒有,因為bash.bashrc會比這個檔案還晚run..)

 

最下方發現萬惡的LANG=”C”

 

立馬幹掉他,換成

LANG=”zh_TW.UTF-8″
LANGUAGE=”zh_TW:zh”

 

然後記得還要補上一行export LANGUAGE變成

#LANG=C

LANG=”zh_TW.UTF-8″
LANGUAGE=”zh_TW:zh”

export LANGUAGE
export LANG

 

存檔收工!

 

Leave a comment

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料