WSL Ubuntu-24.04 を Dドライブにインストール

概要

WSLを常用しています。 WindowsとしてはCドライブをシステム・アプリケーション、Dドライブをデータ領域としてパーティションを2つに分けて使用しているのですが、WSLを標準的にインストールした場合、仮想PCイメージがCドライブに作成されます。 そのため、Dドライブには十分に空きがあるにも関わらず、Cドライブが空き容量が少なくなり、仕方なく、その都度何かしら行って空き領域を増やしていました。

仮想PCイメージをCドライブ以外に作成する方法は前から知っていたのですが、WSL上のLinuxが動作しなくなると困るので、行うことを躊躇していました。

今回、他の用途でもう少し空き容量を増やしたかったこと、別途、そろそろ Ubuntu を 22.04LTS から24.04LTS に移行しようと思ったこともあり、下記の方針で行うこととしました。

Ubuntu 24.04 を新規でWSLインストールし、この仮想PCイメージをDドライブに移動します。 この状態で、22.04(Cドライブ)から24.04(Dドライブ)へUbuntuのメイン環境を移行していきます。 このやり方であれば、移行に失敗して現在使用しているLinux環境が使えなくなることを防ぎ、段階的な移行が可能になります。

作業の流れ

  • Ubuntu 24.04 を WSL上にインストール
  • この環境を D:\wsl\export\Ubuntu-24.04.tar にエクスポート
  • WSL上から Ubuntu 24.04 を削除(unregister)
  • エクスポートしたファイル(D:\wsl\export\Ubuntu-24.04.tar)を D:\wsl\Ubuntu-24.04 で動作するようインポート

これで基本的には問題なく実行できましたが、細かい点として、下記のように、インストール時と若干挙動が異なる点があるがあり追加で作業を行いました。

WSLではインストール時にユーザーの追加しデフォルトユーザーとして登録することで、デフォルトのユーザーの環境で起動します。 しかし、原因はよくわかりませんが、意図せず、エクスポートした後はrootの環境で起動するようになりました。 これについては、ubuntu2404 config –default-user と行うことで再設定できることがわかりました。 ログイン後、sudoについてのメッセージが表示されますが、一度 sudo を実行すれば ~/.sudo_as_admin_successful が生成されることで表示されなくなります。

実際の作業

wsl –list

現在インストールされているディストリビューションを確認

PS C:\Users\wurly> wsl --list
Linux 用 Windows サブシステム ディストリビューション:
Ubuntu-22.04 (既定)

wsl –list –online

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

wsl --list --online
インストールできる有効なディストリビューションの一覧を次に示します。
'wsl.exe --install <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
Ubuntu-24.04                    Ubuntu 24.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.6              openSUSE Leap 15.6
SUSE-Linux-Enterprise-15-SP5    SUSE Linux Enterprise 15 SP5
SUSE-Linux-Enterprise-15-SP6    SUSE Linux Enterprise 15 SP6
openSUSE-Tumbleweed             openSUSE Tumbleweed

wsl –install -d Ubuntu-24.04

Ubuntu 24.04 をインストール

PS C:\Users\wurly> wsl --install -d Ubuntu-24.04
インストール中: Ubuntu 24.04 LTS
Ubuntu 24.04 LTS がインストールされました。
Ubuntu 24.04 LTS を起動しています...
Installing, this may take a few minutes...
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: wurly
New password:
Retype new password:
passwd: password updated successfully
Installation successful!
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

Welcome to Ubuntu 24.04.1 LTS (GNU/Linux 5.15.153.1-microsoft-standard-WSL2 x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Thu Mar  6 07:26:02 JST 2025

  System load:  0.15                Processes:             46
  Usage of /:   0.1% of 1006.85GB   Users logged in:       0
  Memory usage: 2%                  IPv4 address for eth0: 172.23.229.187
  Swap usage:   0%


This message is shown once a day. To disable it please create the
/home/wurly/.hushlogin file.

vhdxファイルの確認

仮想ディスクイメージ(.vhdx)ファイルを確認します。

下記に作成されます。

C:\Users\ユーザー名\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu24.04LTS_ランダムな文字列\LocalState

今回、下記似生成されていました。

C:\Users\wurly\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu24.04LTS_79rhkp1fndgsc\LocalState\ext4.vhdx

容量は1.29GBでした。

PS C:\Users\wurly> wsl --list
Linux 用 Windows サブシステム ディストリビューション:
Ubuntu-22.04 (既定)
Ubuntu-24.04

停止

一旦、Ubuntuからログアウトします。

wurly@LT1:~$ exit
logout
この操作を正しく終了しました。

停止確認

Stoppedになっていることを確認します。 もしなっていなければ、wsl –shutdown で停止します。

PS C:\Users\wurly> wsl --list -v
  NAME            STATE           VERSION
\star{} Ubuntu-22.04    Stopped         2
  Ubuntu-24.04    Stopped         2

wsl –export

エクスポートします。

wsl --export Ubuntu-24.04 D:\wsl\export\Ubuntu-24.04.tar

インストール直後なので容量は少なく、エクスポートはすぐに終わりました。

PS C:\Users\wurly> wsl --export Ubuntu-24.04 D:\wsl\export\Ubuntu-24.04.tar
エクスポートが進行中です。これには数分かかる場合があります。
この操作を正しく終了しました。

wsl –unregister

インストールしたものを一旦削除します。(誤って別のものを削除しないように気をつけます。)

wsl --unregister Ubuntu-24.04

wsl –import

インポートします。

wsl --import Ubuntu-24.04 D:\wsl\Ubuntu-24.04 D:\wsl\export\Ubuntu-24.04.tar --version 2

ubuntu2404 config –default-user

Ubuntu 24.04 を起動したところ、rootでのログイン状態となってしまいました。 “ubuntu2404” という(謎の)コマンドでデフォルトユーザーの設定ができるようです。

ubuntu2404 config --default-user wurly

これにより、再度、設定したデフォルトユーザーで起動するようになりますが、下記のメッセージが表示されます。

To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

“sudo ls”等、適当なコマンドでsudoを実行することで、~/.sudo_as_admin_successful が生成され、メッセージは消えます。

-rw-r--r-- 1 wurly wurly    0 Mar  6 07:58 .sudo_as_admin_successful

終わりに

以上の通り、Ubuntu 24.04 を新規でWSLインストールし、この仮想PCイメージをDドライブに移動できました。

Copied title and URL