WSLのDebianディストリビューションを導入すると、デフォルトでは英語モードになっている。これを日本語化してメッセージ出力やタイムゾーン設定、マニュアルドキュメントなどを日本語化しよう。
対象OS:Windows 10バージョン1709以降(64bit版のみ)
Windows 10に「WSL(Windows Subsystem for Linux)」をインストールすると、Linux向けのプログラム(バイナリファイル)をそのまま実行できるようになる。WSLのインストール方法や活用については、以下のTIPSなどを参照していただきたい。現在では、UbuntuやDebian、SUSE Linux、WLinux(これはDebianベースの有償製品)など、数種類のLinuxディストリビューションを導入できるようになっている。
この方法でインストールされるLinuxは英語版で、何もローカライズされていない。英語版だと、メッセージやマニュアル(ヘルプ)などが全て英語となる。日本語Windows 10で使うなら、日本語化されたLinuxの方が使いやすいだろう。それには、Linuxの「ロケール(言語設定)」やマニュアルドキュメントなどを日本語化しておけばよい。
本TIPSでは、WSLのDebianを日本語化する方法についてまとめておく。Ubuntuの日本語化については以下のTIPSを参照していただきたい。
WSLのDebianを日本語化する場合、どこまで日本語対応させるかによって、いろいろな選択肢がある(ロケールだけ日本語対応するか、その上で動作するアプリまで全て対応するか、など)。本TIPSでは以下のコマンドを順に実行して、ロケールとタイムゾーンを日本語化することにする。基本的な手順はUbuntuの場合とほぼ同じである。なお以下の手順は、原稿執筆時点で利用できるDebianのVersion 9.5を対象としている(バージョン番号は「cat /etc/debian_version」で確認可)。
# 1.パッケージ情報の更新
sudo apt update
sudo apt upgrade
# 2.日本語関連パッケージのインストール
sudo apt install task-japanese
# 3.ロケールを日本語に設定
sudo dpkg-reconfigure locales
# 4.ここでいったん終了してから、Debianを再起動
# 5.タイムゾーンをJSTに設定
sudo dpkg-reconfigure tzdata
# 6.日本語ツールなどのインストール
sudo apt install man
以下、順番に手順を紹介する。
日本語化の前に、Debianをインストールして起動し、ユーザー名の入力などの初期セットアップを済ませたら、最初に「apt update」「apt upgrade」を行って、Debian環境を最新の状態に更新しておいていただきたい。これらのコマンドについては次のTIPSを参照のこと(Debianでもaptコマンドは同様に利用できる)。
なお、これらのコマンドを実行する場合は、前に「sudo 〜」を付けて、root権限で実行する必要がある。「sudo」はroot権限で起動する指示で、最初の1回はルートのパスワードを入力する必要がある。「sudo -i」で(インタラクティブモードの)root権限のシェルにしておいてから、「apt 〜」を実行してもよい。
環境によっては、起動したDebianのコンソールの表示が英語フォントになっていることがあるようだ。その場合は、日本語メッセージなどを表示できるように、コンソール画面の左上にあるメニューから[プロパティ]を開き、[フォント]タブで[MS ゴシック]などの日本語フォントを選択しておこう。
次は、日本語関連のツールやmanドキュメントなどが含まれている「task-japanese」というパッケージを追加する。実行するコマンドは次の通り。
sudo apt install task-japanese
「apt install 〜」はパッケージをインストールする指示である。確認メッセージが表示されるので、そのまま[Enter]を押すとインストールが実行されるが、「apt -y 〜」とすると、ユーザーの確認なしでインストールできる。
ここで「E: Unable to locate package task-japanee」のようなエラーメッセージが表示された場合は、手順1.の更新手順を先に実行しておくこと。
Linuxを日本語環境にするということは、ロケールをデフォルトの「en_US.UTF8」から「ja_JP.UTF8」に切り替えるということである(文字コードはUTF-8になる。ロケール文字列の意味についてはLinux Hacks:「環境変数によるロケールの管理」参照)。
まず「dpkg-reconfigure locales」を実行して、ja_JPロケールの設定を追加する。このコマンドを起動するとGUIのようなメニュー画面が表示されるので、下の方にある「ja_JP.UTF-8 UTF-8」を選択してインストールする(ディスクに余裕があるなら[All locales]でもよい)。[Page Down]や[↓]キーなどで画面をスクロールさせ、[スペース]キーでチェックマークをオンにする。そして[Enter]キーを押すとインストールが行われる(マウスでは操作できないので注意)。その次の画面ではデフォルトロケールを選択する画面が表示されるので、[ja_JP.UTF-8]を選択しておく。
sudo dpkg-reconfigure locales
実際に実行すると次のようになる。
ロケールの変更後は、いったんDebianのコンソール(シェル)をexitコマンドや[Ctrl]+[D]で終了してから、もう一度起動する(Windows OSの再起動は不要)。すると以後はずっと変更されたロケールが使われる。
インストールされたばかりのDebianの「タイムゾーン(timezone、時間帯設定)」は、デフォルトでは「DST」(または「UTC」「UCT」など)になっているので、これを「JST(日本標準時)」に変更しておこう。そうしないと、何時間かずれた時刻が表示されたり、ファイルやログの作成/更新などで間違った時刻情報が使われたりすることがある。
タイムゾーンをJSTに変更するためには次のコマンドを実行する。
sudo dpkg-reconfigure tzdata
このコマンドを起動するとGUIのようなメニュー画面が表示されるので、「地理的領域」(ロケール設定前に実行した場合は英語で「Geographic area」と表示される)として[アジア(Asia)]−[東京(Tokyo)]を選択して[Enter]キーを押す。
以上で日本語化は完了しているが、さらに日本語のツールなども導入しておこう。といっても最初に行った「apt install task-japanese」で日本語マニュアル類(manpages-jaなど)はすでにインストールされている。だが、なぜかmanコマンドはインストールされていないので、「apt install man」を実行してmanコマンドを利用できるようにしておく。
sudo apt install man
これら以外のツールについても、必要に応じてインストールしていただきたい。なおパッケージを追加し過ぎたり、設定を変更し過ぎて不明/不安定な状態になったら、設定を「リセット」して、また最初から環境設定をやり直すこともできる(割と簡単に環境を初期化できるのも、このアプリ版のWSLのメリットだ)。設定をリセットする方法については、以下のTIPSを参照のこと。
以上の方法でコマンドのメッセージ出力などを日本語化することができたが、逆に英語モードで実行したいこともあるだろう。日本語モードだと、例えばdateコマンドの出力に日本語文字が混じっていて、後でテキスト処理する場合などに面倒になるからだ。
デフォルトのロケール(Debianコンソール起動時のロケール設定)を切り替えるには、次のコマンドを実行してからシェルを再起動する。
# 英語にする場合
sudo update-locale LANG=en_US.UTF8
# 日本語にする場合
sudo update-locale LANG=ja_JP.UTF8
デフォルト設定をそのままにして、特定のコマンドだけを英語モードで実行させたければ、そのコマンドの直前にロケール指定を付けて、「LANG=en_US.UTF8 date」のようにして実行する。詳細については、以下のTIPSの「ロケールを一時的に英語にする」の項目を参照のこと。
Copyright© Digital Advantage Corp. All Rights Reserved.