葛のメモ帳

自分で調べたことを忘れないためにメモっておきます

葛のメモ帳

自分で調べたことを忘れないためにメモっておきます


WSL2を任意のドライブにインストールする

WSL2を任意のドライブにインストールする

0. WSL2導入準備

command lineベースで行うので、以下を参考に導入を進めてください。

https://learn.microsoft.com/ja-jp/windows/wsl/install-manual

0-1. 手順 1 - LinuxWindows サブシステムを有効にする

管理者権限で開いたPowerShellで以下を実行する。

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

0-2. 手順 2 - WSL 2 の実行に関する要件を確認する

WSL 2 に更新するには、Windows 10 を実行している必要があります。

  • x64 システムの場合: バージョン 1903 以降 (ビルド 18362.1049 以降)。
  • ARM64 システムの場合: バージョン 2004 以降 (ビルド 19041 以降)。
  • または Windows 11。

0-3. 手順 3: 仮想マシンの機能を有効にする

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

0-4. 手順 4 - Linux カーネル更新プログラム パッケージをダウンロードする

  1. 最新のパッケージをダウンロードします。
  2. これを起動してインストールします。

0-5. 手順 5 - WSL 2 を既定のバージョンとして設定する

wsl --set-default-version 2

MDSNの手順6は実行しません。

1. Ubuntu-22.04をインストールする

インストール可能なディストリビューションを確認します。

wsl --list --online

実行結果

> wsl --list --online
インストールできる有効なディストリビューションの一覧を次に示します。
'wsl --install -d <Distro>' を使用してインストールします。

NAME                                   FRIENDLY NAME
Ubuntu                                 Ubuntu
Debian                                 Debian GNU/Linux
kali-linux                             Kali Linux Rolling
Ubuntu-18.04                           Ubuntu 18.04 LTS
Ubuntu-20.04                           Ubuntu 20.04 LTS
Ubuntu-22.04                           Ubuntu 22.04 LTS
OracleLinux_7_9                        Oracle Linux 7.9
OracleLinux_8_7                        Oracle Linux 8.7
OracleLinux_9_1                        Oracle Linux 9.1
openSUSE-Leap-15.5                     openSUSE Leap 15.5
SUSE-Linux-Enterprise-Server-15-SP4    SUSE Linux Enterprise Server 15 SP4
SUSE-Linux-Enterprise-15-SP5           SUSE Linux Enterprise 15 SP5
openSUSE-Tumbleweed                    openSUSE Tumbleweed

実際にインストールを行います。

wsl --install -d Ubuntu-22.04

実行結果

wsl --install -d Ubuntu-22.04
インストール中: Ubuntu 22.04 LTS
Ubuntu 22.04 LTS はインストールされました。
Ubuntu 22.04 LTS を起動しています...

自動的に別ウィンドウでターミナルが立ち上がります。

USERNAMEとPASSWORDを作成します。

3. WSLをエクスポートする

powershellで実行します。このとき移行先に出力しておきます。今回はG Driveにしました。

wsl --export Ubuntu-22.04 G:\Ubuntu.tar

4. 作成したWSL2インスタンスを削除します

wsl --unregister Ubuntu-22.04

5. エクスポート先からWSL2をインポートする

wsl --import Ubuntu-22.04 G:\wsl G:\Ubuntu.tar

7. WSL起動時のデフォルトユーザー変更

このまま起動すると root userで入ってしまうので、これを対応します。

vi /etc/wsl.conf で下記内容をファイルの末尾に直接書き込みました.

[boot]
systemd=true

[user]
default=YOUR_USERNAME

一度ターミナルを閉じてください。この時何度かログインやログアウトターミナルを閉じたりをすることで、設定が反映されました。

改めてwslを開くとUSERNAMEでログインできていると思います。

参考文献

  1. https://learn.microsoft.com/ja-jp/windows/wsl/install-manual
  2. https://zenn.dev/shittoku_xxx/articles/066cfd072d87a1
  3. https://qiita.com/asakiss/items/4b86d2f9ede6613cee23