- AquaNet IT Business - https://todo.vc/aquanet -

Windows Subsystem for Linux にDebianをインストール


Windows10になって64ビット版(のみ)において、Bash on Ubuntu for Windowsとして採用されていた、純正Linuxとも言うべきサブシステム(いわゆるVirtual MachineとしてのLinuxではなくWindowsの別システムとして既存のリソースにアクセス出来る)ですが、ネーミングがWindows Subsystem for Linux(以後WSL)として生まれ変わりました。Ubuntu 以外にも debian など主要なリビジョンが Microsoft Store を通じて無償提供され出しました。そこでUbuntuで遊んでいたWSLをDebianに変更してみました。

 

Windowsの機能としての、WSLを有効にする

 

●Windows PowerShellを管理者権限で立ち上げる

スタートメニューから Windows PowerShell を右クリックして、[その他]> [管理者として実行]を選択します。

PS C:\> Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

この一行を実行[Enter]するだけで、WSL が有効になります。
 

●GUIによる会話形式での設定(上記で有効に出来た場合は不要)



アプリ]を選択します。
 


プログラムと機能]をクリックします。
 


Windows の機能の有効化または無効化]をクリックします。
 


Windows Subsystem for Linux]に[]を入れて、[OK]をクリックします。
 

●どちらの設定方法でも、終了後再起動します。

再起動後、環境が整ったかの確認コマンド(必須ではありません。取り敢えずインストールへ・・・)

PS C:\> Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

 
 

Microsoft Store より Debian をインストールする

 

●スタートメニューより[Microsoft Store]を選択します。



 

●ストアの検索欄で[Linux]を検索します



Debian GNU/Linux]選択し、次の画面で[入手]をクリックすれば、インストールされます。

 

●新規ユーザとパスワードを設定します。



これでキャラクターベースですが、最低限のコマンドの使用が可能となります。
 
ここまで「ウィキペディア:Windows Subsystem for Linux」を参照させて戴きました。

 

WSLの環境整備とGUI化

 

●Debian のアップデート

$ sudo nano /etc/apt/sources.list
  GNU nano 2.7.4                   File: /etc/apt/sources.list
deb http://deb.debian.org/debian stretch main contrib non-free
deb http://deb.debian.org/debian stretch-updates main contrib non-free
deb http://security.debian.org/debian-security/ stretch/updates main contrib non-free

各行末に contribnon-free を追加し、保存します。([Ctrl]+[o], [Enter],[Ctrl]+[x]以後同様)

$ sudo apt update
$ sudo apt upgrade -y

これで、Debian は最新の状態になりました。
 

●日本の環境に設定します。

$ sudo dpkg-reconfigure tzdata

Asia/Tokyo を選択します。

$ sudo sudo dpkg-reconfigure locales

[*] en_US.UTF-8 と [*] ja_JP.UTF-8 を選択し、[None]を選んで終了します。

$ sudo ln -s /mnt/c/Windows/Fonts /usr/share/fonts/windows

これは、mnt にマウントされた Windows のフォントファイルにリンクを張って使用できるようにしている所です。(Windowsのフォントを使いたい時だけ必要

設定した、日本語環境を有効にしてみるには次のようにします。

$ export LANG=ja_JP.UTF-8

「してみる」と書いたのは、一度コンソールを終了すると次回起動時元に戻っているからですが、後ほどそれを自動起動するようにします。

この項目に関して「メモ置き場のブログ」を参照させて戴きました。詳細に書かれています。
 

●最小限のデスクトップをインストールする

$ sudo apt-get -y install lxde-common lxsession openbox

後にX-Windowを導入した時 LXDE というデスクトップが立ち上がります。
 

●X-Window が使用できるようにする

この設定はLinux 側ではなく、Windows 側で行います。まず SOURCEFORGE より VcXsrv をダウンロードします。(図をクリック)


もしダウンロードが、セキュリティソフトでストップされたら、原因はこのファイルが実行可能ファイルだからです。自己責任でダウンロードを強行するしかありません。普通にダブルクリックすればインストール出来ます。

vcxsrv-64.1.19.6.2.installer.exe のバージョン番号は随時変わります。(2018.04.11現在)

●X-Window 起動に関する重要な設定

その前提としてあるのは、Linux側から見てLinuxのディスプレイドライバーでX-Windowを起動するのではなく、WindowsのアプリケーションとしてインストールしたX-Serverに出力してWindowsの表示機能で表示していることです。

つまり、最低条件としてLinux側とVcXsrvアプリの間で、ディスプレイ番号を合わさなければなりません。

$ export DISPLAY=localhost:0.0

Linux側はこの一行を実行すると、ディスプレイ番号 :0.0 へ出力する設定が出来ます。(後に自動起動させます。)

さて次に、Windows のデスクトップで XLaunch のアイコンをダブルクリックします。


最初の画面で、[One large window]を選択し、[Display number]に[0]を入力します。[次へ][次へ]と進み、最後のダイアログ[Save configuration]のボタンをクリックします。エクスプローラが開いたら、そのままのファイル名で保存してください。

保存先は C:\users\USERNAME\Documents\VcXsrv_Config\config.xlaunch になります。(\ は¥と同じです。)

このファイルのショートカットをデスクトップに作って、ダブルクリックすると設定を反映して X-Window が立ち上がります。Linux 側からの出力がまだないので真っ暗です。WSLに戻って、デスクトップを出力してみましょう。

$ startlxde

ページトップの図のようにデスクトップが開けば成功です。(上図では Chrome と gedit を別途インストール後立ち上げてあります。また、xeyes を起動しています。)

さて、問題なくX-Windowが表示されることを確認したら、前述の環境設定の自動起動を有効にします。

$ nano ~/.bashrc

ファイルを開けたら、最下部に下記のように書き加えて保存します。以後WSLを立ち上げる度に設定が実行され、「ディスプレイ番号:0.0」と「日本語表示」が有効になります。

  GNU nano 2.7.4                   File: /home/USER/.bashrc
### Display Setting
export DISPLAY=localhost:0.0

### for Japanese Language
export LANG=ja_JP.UTF-8

以上