WSL にまっさらな新規の Ubuntu 環境をつくる
WSL に既存 Ubuntu 環境とは別の、まっさらな新規 Ubuntu 環境を作成する方法を確認します。
下記のブログを読んで知った方法なのですが、賢いアイデアだなあと思い、試した時の内容をメモしたものです。
環境
- Windows 11 Pro(10.0.22000 N/A ビルド 22000)
- WSL2
新規 Ubuntu 環境の作成
作業前の状況です。Microsoft Store からインストールしてきた Ubuntu が 1 つだけあります。
> wsl -l -v NAME STATE VERSION * Ubuntu Running 2
Ubuntu のイメージをダウンロード
Winodws のファイルシステム上に、Ubuntu Cloud Images
から利用したい WSL 用の Ubuntu イメージをダウンロードしてきます。Ubuntu Cloud Images
とは、Ubuntu の開発者さんが創業した Canonical 社により管理されている Ubuntu イメージたちです。
Ubuntu Cloud Images are the official Ubuntu images that have been customised by Canonical to run on public clouds that provide Ubuntu Certified Images, Openstack, LXD and more.
> curl "https://cloud-images.ubuntu.com/releases/focal/release-20221018/ubuntu-20.04-server-cloudimg-amd64-wsl.rootfs.tar.gz" -OutFile ubuntu-20.04-server-cloudimg-amd64-wsl.rootfs.tar.gz
WSL 上に Ubuntu 環境を作成
ダウンロードしてきたイメージを利用して、新しい Ubuntu 環境を作成します。
> # WSL 環境を作成するフォルダを用意しておく > # このフォルダ下に WSL 用のバーチャルディスクができる > mkdir C:\wsl > # WSL にイメージをインポートして、新規環境をつくる > # wsl --import <Distribution Name> <InstallLocation> <FileName> > wsl --import Ubuntu2 C:\wsl\ubuntu2 ./ubuntu-20.04-server-cloudimg-amd64-wsl.rootfs.tar.gz > # 確認 > # 指定した Distribution Name で新規環境が作成されている > wsl -l -v NAME STATE VERSION * Ubuntu Running 2 Ubuntu2 Stopped 2 > # ログインしてみる > wsl -d Ubuntu2 root@laptop:/mnt/c/work/image#
Import a new distribution - wsl
ユーザーの追加
作成した Ubuntu 環境では、root ユーザーしかデフォルトで用意されないため、作業用のユーザーを追加します。
$ # 作業ユーザー zunda を作成 $ useradd -m -G sudo -s /bin/bash zunda $ # パスワードを設定 $ sudo passwd zunda $ # WSL ログイン時のデフォルトユーザーを、作成したユーザーに変更 $ echo -e "[user]\ndefault=zunda" > /etc/wsl.conf $ cat /etc/wsl.conf [user] default=zunda $ exit
確認
環境を再起動してから確認。
> # 環境を停止 > wsl -t Ubuntu2 > # ログイン > wsl -d Ubuntu2 zunda@laptop:/mnt/c/work/image$
その他
そのほかのメモ。
Windows Terminal から接続
Windows Terminal より接続可能な環境の一覧に、新規作成したものが自動的に追加されています。
VS Code からアクセス
Remote Deployment の Extension を導入している VS Code の場合、新規作成した環境も選択できるようになっています。