Ubuntu 日文環境設定全攻略:locale 設定方法與常見問題解答

1. 介紹

在 Ubuntu 以及其他 Linux 環境中,「locale(地區設定)」的設定扮演著非常重要的角色。所謂地區設定,就是根據各國或地區的文化和習慣,調整系統或應用程式顯示的語言、日期與時間格式、貨幣符號、小數點和逗號的用法等,讓環境最佳化的機制。

例如,剛安裝完 Ubuntu 後,預設往往是英文環境,這時系統訊息、應用程式顯示,甚至日期和數字格式,對日本用戶來說都不太習慣。要將這些改為日文或符合日本規格時,「locale」的設定就不可或缺。

特別是不僅用於伺服器,也經常在 Ubuntu 桌面、WSL(Windows Subsystem for Linux)、Docker 等虛擬環境下使用時,正確設定 locale 不僅能實現日文化,還能防止亂碼,提升操作體驗。

本文將系統性說明 Ubuntu 中 locale 的角色與設定方式,以及常見問題的解決方法。不論你是剛開始使用 Ubuntu,還是需要在現有環境中做日文化或調整 locale,都歡迎參考本指南。

年収訴求

2. 現況確認(檢查階段)

在更改 Ubuntu 的 locale 設定前,首先應該確認「目前 locale 設定為何」。這一節會說明實用的指令與確認方式。

最基本的確認方式,是在終端機執行 locale 指令。這樣可以列出目前有效的 locale 設定詳情。主要項目如下所示:

LANG=ja_JP.UTF-8
LC_CTYPE="ja_JP.UTF-8"
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
...

「LANG」表示整個系統的預設 locale,各「LC_」開頭的項目分別對應文字種類、數字、日期、訊息等設定。例如,如果「LANG」或「LC_MESSAGES」顯示「ja_JP.UTF-8」,代表日文環境已啟用。

若想查看所有可用的 locale,可使用下列指令:

locale -a

這個指令會列出系統已安裝的所有 locale。請確認清單中是否包含「ja_JP.UTF-8」等日文相關的 locale。

如果沒有日文 locale,或 locale 指令輸出為英文或非預期值,則需要依照下述步驟新增或更改 locale 設定。

3. 沒有日文 locale 時的處理方式

如果檢查結果 locale -a 輸出中沒有「ja_JP.UTF-8」等日文 locale,或日文顯示有問題,則必須新增並啟用日文 locale。以下說明詳細步驟。

首先,生成與使用日文 locale 需要「language-pack-ja」和「locales」等套件。如果未安裝這些套件,就無法使用日文 locale。

安裝所需套件

請在終端機執行下列指令,安裝日文相關套件:

sudo apt update
sudo apt install language-pack-ja

依照 Ubuntu 版本和使用情境,也建議一併安裝 locales 套件。

sudo apt install locales

生成日文 locale

安裝好套件後,接著生成日文 locale。請執行:

sudo locale-gen ja_JP.UTF-8

完成後,系統會加入日文 locale,在 locale -a 結果中也會顯示「ja_JP.UTF-8」。

套用 locale 設定

僅安裝與生成還不足以立即套用,建議再用 update-locale 指令把預設 locale 設為日文:

sudo update-locale LANG=ja_JP.UTF-8

這樣,往後新開啟的終端機或登入會話就會套用日文 locale。

4. 生成與啟用 locale

日文 locale 可用後,需進一步生成 locale 並反映至整個系統。這一階段主要用指令來確保日文環境生效。

生成 locale

大多數情況執行 sudo locale-gen ja_JP.UTF-8 即可,但有時需手動編輯 /etc/locale.gen 檔案,取消需要的 locale 行的註解。

  1. 用文字編輯器(如 nano)打開 /etc/locale.gen
   sudo nano /etc/locale.gen
  1. 找到「ja_JP.UTF-8 UTF-8」這一行,若前方有「#」請刪除。
  2. 存檔並關閉編輯器。
  3. 再生成 locale。
   sudo locale-gen

啟用 locale

接著用 update-locale 指令將預設 locale 設為日文:

sudo update-locale LANG=ja_JP.UTF-8

這個動作會自動更新 /etc/default/locale 檔案,日後所有會話都會套用日文 locale。

如果要分別指定多個環境變數(如:LANG、LC_TIME、LC_MESSAGES 等),可如下自訂:

sudo update-locale LANG=ja_JP.UTF-8 LC_TIME=ja_JP.UTF-8 LC_MESSAGES=ja_JP.UTF-8

設定反映時機

執行指令後,有時不會立即生效。此時可嘗試登出再登入,或重啟伺服器讓新設定生效。

5. 系統 vs 個別用戶設定

Ubuntu 的 locale 設定有全系統個別用戶兩種方式。根據使用情境靈活調整,可打造更彈性的環境。

全系統 locale 設定

全系統設定通常使用 /etc/default/locale 檔案或 update-locale 指令。這樣所有新登入的用戶都會預設用相同 locale。

例如:

sudo update-locale LANG=ja_JP.UTF-8

會自動更新 /etc/default/locale,讓日後所有用戶預設語言為日文(ja_JP.UTF-8)。

個別用戶 locale 設定

若只想讓特定用戶用不同 locale,可編輯家目錄下的設定檔,常用 ~/.pam_environment

  1. 以該用戶登入,執行下列指令開檔:
   nano ~/.pam_environment
  1. 在檔案內輸入如下內容:
   LANG=ja_JP.UTF-8

如有需要也可追加 LC_* 變數。

儲存後,僅該用戶登入時會套用設定。適用於多用戶環境,如管理員用英文、一般用戶用日文。

活用 localectl 指令

在 systemd 環境下,也可用 localectl 設定或查詢 locale:

sudo localectl set-locale LANG=ja_JP.UTF-8

這也是套用全系統的方法,一指令即可切換。

6. 在 GUI(Ubuntu 桌面/GNOME)設定 locale

若於桌面用途使用 Ubuntu,許多操作都能透過 GUI(圖形介面)直覺完成。locale 設定也不例外,無需指令即可切換至日文環境。

從設定選單變更 locale 的步驟

  1. 從畫面左下或左側選單打開「設定」。
  2. 選擇「地區與語言」或「Region & Language」。
  3. 在「語言(Language)」欄選擇「日本語」。
  4. 再將「格式(Formats)」設為「日本」或「日本語」,這樣日期、時間、貨幣等也會用日本格式。
  5. 變更後如出現「需重新啟動」或「登出再登入」的提示,請依指示操作。

輸入法(IME)設定

要順利輸入日文,也需設定 IME(Input Method Editor)。Ubuntu 主要使用「Fcitx5」或「IBus」等框架,預設有「Mozc」或「Anthy」日文輸入引擎。

  • 「設定」→「地區與語言」→「輸入來源」中,加入「日本語(Mozc)」等。
  • 可用快捷鍵(如 Super + Space)在日文/英文間切換。

遇到亂碼或日文顯示異常時的處理

即使 GUI 設好語言,有些 App 或終端機還是無法顯示日文,甚至亂碼。這時請確認:

  • 有無安裝字型套件(如 fonts-noto-cjk 等)。
  • 部分 App 需個別設定語言,可至選單或設定畫面調整為日文。
  • 重啟系統或登出再登入確認設定已生效。

7. 確認反映與疑難排解

更改 locale 設定後,請實際確認設定是否生效。若未如預期生效或遇到亂碼等問題,請參考下述對策。

確認 locale 設定是否生效

開啟終端機,執行下列指令查詢當前 locale:

locale

若輸出結果中的 LANG=ja_JP.UTF-8 及各 LC_* 項目為「ja_JP.UTF-8」,即代表日文 locale 設定成功。

如要再查一次所有可用 locale,重複執行:

locale -a

如見「ja_JP.UTF-8」即已正確加入。

檢查日期與數字格式

locale 設定會影響日期和數字的格式。可用下列指令確認日期顯示:

date

如輸出結果以日文顯示,代表 locale 已發揮作用。

常見問題及對策

1. 若出現亂碼

  • 可能是終端機或應用程式未安裝日文字型。請用 sudo apt install fonts-noto-cjk 裝字型。

2. locale 設定未生效

  • 變更後請登出再登入或重啟系統。
  • 如還無效,可用 source /etc/default/locale 手動重新讀取。

3. 部分還是顯示英文

  • 可能是部分 LC_* 變數未設,或個別 App 需單獨設定。
  • 可加上 sudo update-locale LC_ALL=ja_JP.UTF-8 統一設定。

4. Docker/WSL 等特殊環境

  • 每種環境可能有不同流程(詳見下節)。

根據這些確認與對策,大多數 locale 相關問題都能解決。

8. Docker/WSL 環境下的 locale 設定

近年 Ubuntu 也常用於 Docker、WSL(Windows Subsystem for Linux)等虛擬或容器環境。這些情況 locale 設定同樣重要,但部分步驟需特別留意。

Docker 環境下設定 locale

在 Docker 容器內用日文 locale,通常需在 Dockerfile 中明確安裝套件與生成 locale。例如:

FROM ubuntu:24.04

RUN apt-get update && \
    apt-get install -y language-pack-ja locales && \
    locale-gen ja_JP.UTF-8 && \
    update-locale LANG=ja_JP.UTF-8

ENV LANG=ja_JP.UTF-8
ENV LANGUAGE=ja_JP:ja
ENV LC_ALL=ja_JP.UTF-8

如此即可在容器內啟用日文 locale。
啟動應用程式時明確指定環境變數,也可確保日文支援。

WSL 環境下設定 locale

WSL 是讓 Windows 執行 Ubuntu 等 Linux 的機能,日文 locale 設定時常讓人困惑。基本設定方式與一般 Ubuntu 相同:

  1. 安裝所需套件
   sudo apt update
   sudo apt install language-pack-ja locales
  1. 生成與啟用日文 locale
   sudo locale-gen ja_JP.UTF-8
   sudo update-locale LANG=ja_JP.UTF-8
  1. .bashrc.profile 增加以下環境變數,確保每次登入都啟用日文 locale:
   export LANG=ja_JP.UTF-8
   export LANGUAGE=ja_JP:ja
   export LC_ALL=ja_JP.UTF-8

亂碼及日文輸入問題對策

  • WSL 下 Windows 字型或終端機(如 Windows Terminal)設定也會影響。請選用支援日文的字型以解決亂碼。
  • Docker 若為最小映像檔,也請安裝字型套件。
    例:apt-get install fonts-noto-cjk

如此,Docker 與 WSL 下亦能順利設定 Ubuntu 的 locale。

9. FAQ(常見問題解答)

關於 Ubuntu locale(地區設定),下列彙整常見問題與解答,方便排解疑難或優化操作。

Q1. locale -a 沒有「ja_JP.UTF-8」,該怎麼辦?
A. 表示尚未生成日文 locale。
請執行下列指令安裝「language-pack-ja」與「locales」套件,並生成 locale。

sudo apt update
sudo apt install language-pack-ja locales
sudo locale-gen ja_JP.UTF-8
sudo update-locale LANG=ja_JP.UTF-8

完成後再執行 locale -a,就會出現「ja_JP.UTF-8」。

Q2. locale 設定後沒生效,原因是什麼?
A. 變更後需登出再登入或重啟。
如還未生效,請檢查環境變數,或確認 /etc/default/locale~/.pam_environment 內容。

Q3. 終端機或部分 App 日文顯示亂碼,怎麼解決?
A. 多半因未安裝日文字型。請執行:

sudo apt install fonts-noto-cjk

另請將終端機、編輯器等的字型設定為日文支援字型。

Q4. 多個 locale 混用時,哪個優先?
A. 優先順序為「LC_ALL > LC_* > LANG」。
如需暫時統一可用:

export LC_ALL=ja_JP.UTF-8

永久設定則寫入 /etc/default/locale~/.pam_environment

Q5. Docker 或 WSL 跟一般 Ubuntu 設定有差嗎?
A. 基本步驟一樣,但 Docker 須在 Dockerfile 明確寫入 locale 生成與環境變數;WSL 須注意 Windows 字型設定。詳見本文相關章節。

Q6. 用 GUI 設定語言,但有些還是顯示英文,為什麼?
A. 有些系統或應用程式未提供完整日文翻譯,或需個別設定。請確認應用程式設定畫面。

本 FAQ 覆蓋 Ubuntu locale 設定常見迷思。如有特殊情境歡迎留言或洽詢支援頁。

10. 結論

本篇從 Ubuntu locale(地區設定)基礎、日文化實作步驟、疑難排解,直到 Docker/WSL 等特殊環境案例皆有詳盡說明。

locale 不僅是語言設定,更影響日期、貨幣、數字格式及編碼等,是系統重要組件。正確設定可大幅提升 Ubuntu 操作性與使用體驗。

特別是使用日文時,「ja_JP.UTF-8」 locale 的安裝與設定不可或缺。不僅可用指令,也能透過 GUI 或用戶自訂調整,靈活打造理想環境。

最後,善用文中 FAQ,實務操作時遇到困難也能快速對應。

希望本文能為想打造日文 Ubuntu 環境的用戶帶來幫助。

侍エンジニア塾