WSLはWindows Subsystem for Linuxの略でWSLを利用するとWindows上でLinuxを動かすことができます。

LinuxディストリビューションのUbuntuをインストールするとPython3もインストールされているのでPython3を使ったプログラムの作成も可能です。インストールは下記の手順通りに進めれば難しい箇所も全くなく簡単に完了します。

今回使用したWindows10 Homeでバージョンは1903、OSビルドは18362.295です。Windows11 Homeではバージョンは22H2でOSビルドは22621.1105です。

Ubuntuのインストール

Windowsの機能の有効化(Windows10の場合)

Ubuntuをインストールする前に”Windowsの機能の有効化”からWindows Subsystem for Linux機能を有効にする必要があります。

”Windows機能の有効化”はコントロールパネルから起動することができるので、下記の入力箇所にcontrolと入力してください。最も一致する結果にコントールパネルが表示されクリックするとコントロールパネルを起動することができます。

コントロールパネルの検索
コントロールパネルの検索

コントロールパネルが開いたら、左下にあるプログラムをクリックしてください。

コントロールパネルからプログラムをクリック
コントロールパネルからプログラムをクリック

プログラムの画面からWindowsの機能の有効化または無効化をクリックしてください。

Windowsの機能の有効化
Windowsの機能の有効化

初期設定ではWindows Subsystem for Linuxのチェックが外れた状態なので、チェックを行ってOKボタンを押してください。

WSLにチェックをつける
WSLにチェックをつける

しばらく必要なファイルを検索している等の文字が表示されますが処理が完了すると再起動の確認の画面が表示されます。今すぐ再起動のボタンを押してWindowsの再起動を行います。

有効後に再起動の確認画面
有効後に再起動の確認画面

Windows11の場合

Windows 11ではwsl –installコマンドを実行してインストールを行います。


> wsl --install
要求された操作には管理者特権が必要です。
インストール中: 仮想マシン プラットフォーム
仮想マシン プラットフォーム はインストールされました。
インストール中: Linux 用 Windows サブシステム
Linux 用 Windows サブシステム はインストールされました。
インストール中: Ubuntu
Ubuntu はインストールされました。
要求された操作は正常に終了しました。変更を有効にするには、システムを再起動する必要があります。

システムの再起動が完了するとスタートメニューからUbuntuが選択できるようになるので起動を行ってください。Windows 11の場合はUbuntuのインストールの項目をスキップしてください。

Ubuntuのインストール

再起動の完了後、Ubuntuをインストールするために Microsoft Storeを起動します。左下の検索でWindows Storeと入力すると Microsoft Storeを起動することができます。

コントロールパネルの検索
Microsoft Storeの検索

Microsoft Storeが起動するので上部にある検索にUbuntuと入力してください。入力途中にWindowsでLinuxを実行するアプリを入手すると表示されるので表示されたらそれを選択してください。

Microsoft Storeの初期画面
Microsoft Storeの初期画面

Linuxのディストリビューションが選択できる画面が表示されるので、左側にあるUbuntuをクリックしてください。

WindowsでLinuxを実行する画面
WindowsでLinuxを実行する画面

Ubuntuの画面が表示されるので入手ボタンをクリックしてください。

Ubuntuの入手画面
Ubuntuの入手画面

複数のデバイスで利用するかという確認画面が表示されますが、必要ありませんとクリックします。

複数のデバイスで利用するかの確認画面
複数のデバイスで利用するかの確認画面

必要ありませんをクリックするとダウンロードが開始されます。

ダウンロード実行中
ダウンロード実行中

ダウンロードが完了すると起動ボタンが表示されるので起動ボタンをクリックしてください。

ubuntuを起動
ubuntuを起動

Ubuntuの起動

最初の起動は下記の真っ黒の画面が表示され、Installing. this may taka a few minutesと表示されるので、数分待ちます。

インストール中

インストールが完了するとユーザ名とパスワードを入力する画面が表示されるので、任意のユーザ名とパスワードを入力してください。ログインしているWindowsのユーザ名とパスワードとは関係ありません。


Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: reffect
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Installation successful!
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

インストールしたUbuntuのバージョンの確認を行います。Windows10で行った時は、バージョンが18.04.2 LTS(Bionic Beaver)であることがわかります。


$ more /etc/os-release
NAME="Ubuntu"
VERSION="18.04.2 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.2 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic

Windows11で実行した場合は下記のバージョンとなります。Windows10とは実行した時期が異なるためです。


$ more /etc/os-release
PRETTY_NAME="Ubuntu 22.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.1 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
Ubuntuのバージョンは、lsb_release -aコマンドでも確認することができます。
fukidashi

パッケージリストの更新を行います。パッケージリストの更新ではアップグレードが必要なパッケージの情報を更新し、リポジトリに新しく登録されたパッケージをリストに登録します。

デフォルトのリポジトリがアメリカのためapt updateに時間がかかるのでリポジトリを日本に変更します。下記のコマンドではリポジトリの情報が記載されているファイルsources.listのバックアップファイルを作成し、archive.ubuntu.comをjp.archive.ubuntu.comに変更しています。


$cd /etc/apt
$sudo sed -i.bak -e "s%http://archive.ubuntu.com/ubuntu/%http://jp.archive.ubuntu.com/ubuntu/%g" sources.list

sources.listファイルを変更後、apt updateコマンドを実行します。


$ sudo apt update
Get:1 http://jp.archive.ubuntu.com/ubuntu bionic InRelease [242 kB]
Get:2 http://jp.archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]
Get:3 http://jp.archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]
Hit:4 http://security.ubuntu.com/ubuntu bionic-security InRelease
 ・
 ・

次にapt upgradeコマンドで現在インストールされているパッケージで更新がパッケージの更新を行います。このコマンドを実行する前にはapt updateコマンドを実行し最新情報を取得しておきます。


$ sudo apt upgrade

日本語化設定

日本語化にするためには日本語化パッケージをインストールする必要があります。


$ sudo apt install language-pack-ja
[sudo] password for reffect:
Reading package lists... Done
 ・
 ・
Generating locales (this might take a while)...
  ja_JP.UTF-8... done

日本語設定をjp_JP.UTF-8に設定します。


$sudo update-locale LANG=ja_JP.UTF-8

言語の設定変更を反映させるために一度exitコマンドでログアウトします。


$ exit

再度wslコマンドでログインします。dateコマンドを実行し日本語が表示されていれば日本語化は成功です。時刻もJSTで日本のタイムゾーンに設定されているのでタイムゾーンの設定変更は必要ありません。


$ date
2019年  8月 21日 水曜日 17:21:48 JST

エクスプローラーでフォルダを開く

Windows側からUbuntu に保存されたデータにアクセスする場合はexplorer.exeコマンドを実行します。

コマンドはUbuntu側で行います。


$ explorer.exe  .
explorer.exeの後に.(コンマ)を忘れないようにしてください。.(コンマ)をつけると実行したフォルダがエクスプローラーで開かれます。
fukidashi

実行するとエクスプローラーが起動して、フォルダの中を確認することができます。ユーザのホームディレクトリで実行した場合フォルダのパスは下記となります。


\\wsl$\Ubuntu\home\ユーザ名(インストール時に設定したユーザ名)

rootでのログインとパスワードについて

Ubuntuインストール直後にユーザ名とパスワードを設定しました。管理者権限でコマンドを実行する際はsudo コマンド名で実行することができます。しかしrootユーザに変更したい場合はどのように行えばよいのでしょう。

rootユーザのパスワードは設定していないので、デフォルトではrootユーザでログインすることはできません。sudo su -を実行するとrootユーザに変更することができます。その後passwdコマンドを実行するとrootユーザのパスワードを設定することができます。


$ sudo su -
rootユーザのパスワードはsudo passwd rootでも行うことができます。
fukidashi

Ubuntuのログイン、ログアウト

ログインしているUbuntuから抜けるにはexitコマンドやlogoutコマンドで行うことができます。

ログインするためには、コンソールでubuntu.exe、wsl.exe、bash.exeコマンドを実行するとUbuntuに接続することができます。

また、WindowsメニューにUbuntuが追加されているのでWindowsメニューからも接続することができます。