【Windows10】WSL2(Windows Subsystem for Linux Version2)で「Ubuntu 20.04 LTS」を使う

スポンサーリンク

前の記事で、Windwos10 バージョン2004 をインストールした。この、Windwos10 バージョン2004 からは、WSL2(Windows Subsystem for Linux Version2)が正式に利用できるようになった。

【Windows10】May 2020 (バージョン2004) へ手動アップデート
Microsoftは2020年5月28日、Windows10の最新大型アップデート「May2020Update」の配信を開始した。そこで、Windows10May2020Update(バージョン2004)」へ、手動でアップデートしたので備忘...

WSL2は、以前のWSLよりも更にLinuxとの互換性を強化したものである。WSLではWindowsAPIの上でLinuxを実行させていたものを、WSL2は完全な仮想環境でLinuxカーネルごと起動させるというものになっている。
ファイルアクセスなど速度向上が期待できる反面、Windows間との連携は多少工夫が必要となるが、Linuxカーネルそのものが動いているので、WSLでは実行できなかったソフトなども実行可能になる。

そこで、WSL2を使い「Ubuntu 20.04 LTS」をインストールして動かしたので備忘録を残す。

WSL2の有効化

まずは、「WSL機能」と「仮想マシンプラットフォーム」が使えるように有効化しておく必要がある。

1)Windowsスタートから、設定 > アプリ を実行

画像00

2)「アプリと機能」の「プログラムと機能」を選択

画像01

3)「Windowsの機能の有効化または無効化」を選択

画像02

4)「Linux 用 Windows サブシステム」と「仮想マシンプラットフォーム」の項目をチェックし [OK] する。

画像03

  • Dockerなどの利用に備えて「Hyper-V」もチェックしておく。

ここで再起動する。

WSL2をデフォルトバージョンに設定

スタートメニュー右クリックで、Powershellを管理者モードで起動し、下記コマンドを実行。

wsl --set-default-version 2

ここで、下記のようなメッセージでる事があるので、URLに記載の指示にしたがって、WSLカーネルをアップデートする。

画像04

wsl_update_x64を実行。

画像05

Microsoftストアから「Ubuntu 20.04 LTS」をインストール

Microsoftストアアプリを起動して「Ubuntu」と検索すると、Ubuntuが候補に表示される。

画像11

「Ubuntu 20.04 LTS」を選択して、アプリの画面で「入手」をクリックでインストールする。

画像12

WSLのバージョン確認

Powershellを起動し下記コマンドで、WSLのバージョンが「2」になっているのを確認。

wsl --list --verbose

画像13

Ubuntuを起動

インストールできたら、スタートメニューに「Ubuntu 20.04」が追加されるので実行する。

bashコンソールが起動され、初回時は数分程度かかるので待つ。
続いて、ユーザ名とパスワードを入力し、準備完了。

画像15

ここからはUbuntuの世界なので、下記コマンドでパッケージをアップデートしておく。

$ sudo apt update
$ sudo apt upgrade
【Ubuntu 20.04/18.04 LTS Server】aptパッケージ操作/サービス操作 コマンド
パッケージの更新・インストールパッケージの更新$sudoaptupdate$sudoaptupgradeパッケージのインストール$sudoaptinstall<パッケージ名>パッケージの確認$sudodpkg-l|grep<パッケージ名>保...

IPアドレスの確認

ip addr コマンドで、割り当てられているIPアドレスを確認。

$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: bond0: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether aa:80:26:a6:7a:7f brd ff:ff:ff:ff:ff:ff
3: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 66:8d:af:f1:e6:76 brd ff:ff:ff:ff:ff:ff
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:25:5a:97 brd ff:ff:ff:ff:ff:ff
    inet 172.19.62.5/20 brd 172.19.63.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::215:5dff:fe25:5a97/64 scope link
       valid_lft forever preferred_lft forever
5: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0

$ ip route
default via 172.19.48.1 dev eth0
172.19.48.0/20 dev eth0 proto kernel scope link src 172.19.62.5

IPアドレスは「172.19.62.5」となっており、クラスBのプライベートアドレスが割り当てられている。独立した仮想ネットワークが構築されて、NATかルーティングでWindows側と通信するようである。このIPアドレスは、起動する度に変わる模様。

【Windows10】WSL2のイーサネットIPアドレス
前の記事で、WSL2でUbuntu20.04LTSを使った。それで、利用されるIPアドレスについて確認したので備忘録を残す。WSL2のIPアドレス確認WSL2を起動し、ipaddr,iprouteコマンドで確認。172.31.187.47で...

その他の設定

【Windows10/WSL2 Ubuntu 20.04 LTS】Bashコンソールでの警告音を消す
以前の記事で、Windows10のWSL2でUbuntu20.04LTSが使えるようにした。そのBashコンソールを使っていて、BSしすぎた時などちょっとした事で警告音が鳴ってしまって気になる。そこで、その警告音を鳴らさないようにしたので備...

補足

  • WindowsからLinuxのファイルへアクセスは、エクスプローラーのアドレスに「\\wsl$\Ubuntu-20.04」を入力してアクセスできる。
  • Windowsのファイルシステムへのアクセスは「/mnt/c/」のパスからアクセスできる。下記のように作業用フォルダ等へリンクしておくと便利。
    $ ln -s /mnt/c /Users/<UserName>/work
  • WSL2でのネットワークアドレスは、根本はWindowsとは別扱いになっており「イーサーネットアダプター vEthernet(WSL)」という仮想ネットワークインターフェースで扱われる。クラスBのプライベートアドレスが割り当てられてられ、起動する度に変わる。

所感

MacパソコンはUnix互換のコンソールを持っているので、私はMacが重宝している。Windowsパソコンでも、このWSL2のようにLinux環境が手軽に使えるようになるのは、とても歓迎できる。今後更に、WindowsとLinuxの融合が進む事を期待する。

関連記事

【Windows10/WSL2 Ubuntu 20.04 LTS】日本語表示とロケール変更
以前の記事で、Windows10のWSL2でUbuntu20.04LTSを使えるようにした。そこで、日本語表示するようにロケール変更したので備忘録を残す。現状確認dateコマンドを実行。$dateThuJun1120:17:15JST202...
【Windows10/WSL2 Ubuntu 20.04 LTS】X Serverアプリを実行する(Emacs GUI版を試す)
以前の記事で、Windows10のWSL2でUbuntu20.04LTSが使えるようにした。そこで、「XServer」ソフトをインストールし、Xアプリの実行を試したので備忘録を残す。X410のインストールWindows用のXServerソフ...
【Windows10 WSL2/Ubuntu 20.04 LTS】gcc, make などの開発ツールをインストールして使う
前の記事で、Windows10のWSL2に「Ubuntu20.04LTS」をインストールした。続いて、gccやmakeコマンドの開発ツールを使えるようにしたので備忘録を残す。WSL2とはいえ基本的にはLinuxなので、以前、UbuntuSe...
【Windows10/WSL2 Ubuntu 20.04 LTS】Emacsを使う
以前の記事で、Windows10のWSL2で「Ubuntu20.04LTS」が使えるようにした。そこで、Emacsエディターも動くようにしたので備忘録を残す。WSL2とはいえ基本的にはLinuxなので、以前、UbuntuServerで「Em...
【Windows10】WSL(Windows Subsystem for Linux)でUbuntuを使う
Windwos10バージョン1709(Windows10FallCreatorsUpdate)からは、WSL(WindowsSubsystemforLinux)が正式に利用できるようになった。これは、Windows上でUbuntuなどのLi...

参考

  1. WSL 2 の新機能
  2. Windows 10 用 Windows Subsystem for Linux のインストール ガイド
  3. WSL 2 Linux カーネルの更新
  4. 20H1とともに正式に来るWindows Subsystem for Linux 2の実力を見る
  5. Windows Subsystem for Linux Installation Guide for Windows 10
  6. Windows10 WSL2の使い方まとめ [20H1 build 18917~]
  7. Windows機を購入したので開発環境作り(WSL2)
  8. WSL2入れてみた
  9. 完全な互換性と改善されたI/Oパフォーマンス ~Canonical、「Ubuntu」の「WSL 2」対応を発表
  10. Microsoft、「Windows Terminal 1.0」を発表 ~タブUIの新しいターミナルアプリ
  11. [速報]WSL 2が正式版に到達。今後はLinuxのGUIアプリへも対応すると。Microsoft Build 2020
  12. 「WSL 2」が正式リリース! ~「WSL 1」とのメリットは? 「Windows Terminal」にも注目
  13. WSL新版でLinuxをさらに使いやすく、Windows 10 May 2020 Update
  14. 「WSL 2」が今後の主流に? LinuxのGUIアプリも動作可能? ~「WSL」のこれからに注目
  15. 「WSL 2」が「Windows 10 バージョン 1903/1909」でも利用可能に ~Microsoftが旧OSに移植

コメント

タイトルとURLをコピーしました