WSL の環境にいろいろインストールしてごちゃごちゃしたので、最初から作り直したい。
でも、今の環境は残したいので、別の 環境を作りたい、という場合の手順です。
方針
C:\WSL-Disk ディレクトリを作成して そこに WSL イメージを格納する。
名前は Ubuntu-24.04-test1 とする
最新の簡単な方法
wsl --list --online
で インストールしたい WSL を選択します。
cd c:\wsl-disk
mkdir Ubuntu-24.04-test1
wsl --install Ubuntu-24.04 --name Ubuntu-24.04-test1 --location Ubuntu-24.04-test1
最新の Ubuntu を入れたい場合
WSL の オンライン一覧には Ubuntu の最新版が入っていないため、
最新の Ubuntu を使うには 下記の手順を行います。
データ格納先の準備
cd C:\
mkdir WSL-Disk
mkdir WSL-Disk\initial-image
Ubuntu から WSL 用の イメージをダウンロード
から noble をクリックして その中にある daily-live/current の中から resolute-wsl-amd64.wsl を選んで ダウンロードします。
ダウンロードしたイメージは C:¥WSL-Disk\initial-image ディレクトリに保存します。
WSL インポートと最低限の設定
コマンドプロンプトから 下記のコマンドを実行して WSLイメージをインポートします。
cd C:\WSL-Disk
mkdir Ubuntu-26.04-test1
wsl --import Ubuntu-26.04-test1 Ubuntu-26.04-test1 C:\WSL-Disk\initial-image\resolute-wsl-amd64.wsl
インポートが 正常に終了した後で、 Windows Terminal を開くと Ubuntu-24.04-test1 が 選択できるようになっています。
Windows Terminal の 「新しいタブを開く」ボタンから Ubuntu-26.04-test1 を選択すると root ユーザでログインできます。
普段使いのために 一般ユーザを作成しておきます。
adduser user
パスワードを聞かれるので入力します。
ユーザ名も聞かれるので適当に入れます。
sudo できるユーザとして登録するため 下記のコマンドを実行します。
usermod -G sudo user
/etc/wsl.conf を編集して ログインする時のデフォルトユーザを指定します。
vi /etc/wsl.conf
内容は
[user]
default=user
WSL から 抜けます。
exit
指定の WSL を停止します。
wsl -t Ubuntu-26.04-test1
もう一度 WindowsTerminal から Ubuntu-26.04-test1 に ログインすると 一般ユーザでログインできます。
管理
C:\WSL-Disk\Ubuntu-26.04-test1 ディレクトリの中には WSL の ディスクイメージが作成されています。
WSL の 仮想マシンを削除するには
wsl --unregister Ubuntu-26.04-test1
で削除できます。 WSL の ディスクイメージも 一緒に削除されます。
もういちど wsl --import からの手順を繰り返す事で何度でも環境を作りなおすことができます。
ユーザのパスワードを忘れたので管理者でログインしたい場合
コマンドプロンプトから
wsl -d Ubuntu-26.04-test1 -u root
と WSL の ディストリビューション名 と ユーザ名を指定してログインできます。
passwd user
で パスワード変更したいユーザの新しいパスワードを設定します。
まとめ
目的に合わせて 専用の WSL イメージを作成、
うまくいかなかったら最初からやり直すのが簡単にできるようになりました。