2015-02-16

Ubuntu 用指令設定終端機顯示中文訊息

怎麼讓 Ubuntu 出現的訊息變成是中文的呢 ? 會遇到這個問題的情況,大概是和阿舍一樣,是安裝 Ubuntu Server 版,然後,在安裝的過程中,忘了或沒去變更預設的語系 (locale),所以,Ubuntu 就會使用預設的美國英文 (en_US.UTF-8) 來做為系統的語系,因此,所有的訊息就都是英文了哩 !


所以,如果要讓 Ubuntu 顯示中文的訊息的話,那就要來變更系統的語系,阿舍很久很久以前有寫一篇介紹變更語系的文,不過,那個是全手動的方法,阿舍今天要介紹的是比較簡單一些些的,打幾個指令就可以搞定的哩 !
要看到像這樣子的中文,語系就要設定正確才行 ..

首先,可以先用 locale 指令確認一下目前使用的語系為何,預設的情況下,應該會看到像下面這樣,所有的語系設定都是 en_US.UTF-8 的。

$ locale 
LANG=en_US.UTF-8 
LANGUAGE= 
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=

確定沒有設定成中文後,接下來,阿舍就要把 Ubuntu 的語系來改成中文了,台灣的正體中文使用的語系代碼是「zh_TW」,所以,操作步驟的指令們就是下面這樣。

sudo locale-gen zh_TW 

sudo locale-gen zh_TW.UTF-8 

sudo dpkg-reconfigure locales 

sudo update-locale LANG="zh_TW.UTF-8" LANGUAGE="zh_TW"

上面的指令都跑完後,用 locale 指令來看的話,語系還會是原來的 en_US.UTF-8,會這樣,是因為要語系環境變數要登出再登入才會變更哩 ! 因此,設定完成後,請先登出再登入,再用 locale 指令來看,應該就會是 zh_TW.UTF-8 了哩 !

$ locale 
LANG=zh_TW.UTF-8 
LANGUAGE=zh_TW 
LC_CTYPE="zh_TW.UTF-8" 
LC_NUMERIC="zh_TW.UTF-8" 
LC_TIME="zh_TW.UTF-8" 
LC_COLLATE="zh_TW.UTF-8" 
LC_MONETARY="zh_TW.UTF-8" 
LC_MESSAGES="zh_TW.UTF-8" 
LC_PAPER="zh_TW.UTF-8" 
LC_NAME="zh_TW.UTF-8" 
LC_ADDRESS="zh_TW.UTF-8" 
LC_TELEPHONE="zh_TW.UTF-8" 
LC_MEASUREMENT="zh_TW.UTF-8" 
LC_IDENTIFICATION="zh_TW.UTF-8" 
LC_ALL=

之後,如果需要再改回英文語系的話,就只要執行下面這一行指令,然後,再登出再登入或重新開機之後,就會回到英文語系了哩 ! ...

sudo update-locale LANG="en_US.UTF-8" LANGUAGE="en_US.UTF-8"


另外,附帶一提的,如果你有遇到類似像下面這樣的錯誤訊息的話,也是和語系設定有關,y就是沒有產生相對的語系檔,一樣用上面提到的指令來產生,應該就可以解決了哩 ! ...

....
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   

推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

沒有留言 :

張貼留言

歡迎留言提問和討論 .... 😁