LoginSignup
0
0

More than 1 year has passed since last update.

WSL2でUbutut仮想環境をサクサクつくる

Last updated at Posted at 2021-11-17

Windowsでubnutu環境を立ててvscodeでコーディングしたいだけなのにdockerの記事ばかり出てくるので、Ubuntu開発環境構築をメモしておく
この方法だと何個も仮想マシンをサクサク入れられる

WSL2のインストール

PowerShell
wsl --install

最新のwindowsならこれだけ
この辺にのってる
https://docs.microsoft.com/ja-jp/windows/wsl/install
https://docs.microsoft.com/ja-jp/windows/wsl/install-manual

Ubuntuイメージのダウンロード

wslにはrootfsイメージが必要なので、以下のサイトから"*wsl.rootfs.tar.gz"をダウンロードする
https://cloud-images.ubuntu.com/hirsute/current/
(21.04以外を使いたい場合は "ubuntu rootfs tar" とかでググればでてくる)
*Microsoft公式からダウンロードした.appxの一部を使う方法もあるらしい
http://www.y2sunlight.com/ground/doku.php?id=wsl2:ubuntu
*コンテナからイメージを作成するのがMicrosoftの公式に乗ってるが面倒くさい
https://docs.microsoft.com/ja-jp/windows/wsl/use-custom-distro

仮想マシンのインポート

rootfsが準備できたらコマンドでインポートする
wsl --import <ディストリビューション名> <ディストリビューションを格納するフォルダー> <rootfsのパス>

PowerShell
wsl --import ubuntu21.04-dev .\Desktop\wsl_distro\ubuntu20_04\ .\Downloads\hirsute-server-cloudimg-amd64-wsl.rootfs.tar.gz

wsl -l -v でインポートしたディストリビューション名があることを確認

PowerShell
wsl -l -v
 NAME                   STATE           VERSION
* ubuntu21.04-dev        Stopped         2

wsl -d <ディストリビューション名>で起動してubuntuに入れることを確認

PowerShell
wsl -d ubuntu21.04-dev

#出力
root@{device-name}:/mnt/c/Users/{windows-user-name}#

管理者(root)のパスワード設定

ubuntuに入ってrootのパスワードを設定する

bash
passwd

管理者(root)のパスワード設定

この方法で仮想マシンをつくるとroot ユーザでログインすることになるので一般ユーザーを作成してデフォルトユーザーとデフォルトディレクトリを一般ユーザーに変更する。(必要ない人はrootのままでOK)

bash
useradd -m -s $(which bash) new-user-name

passwd new-user-name

usermod -G sudo new-user-name

echo 'cd ~' >> /home/new-user-name/.bashrc

cat << EOF > /etc/wsl.conf
[user]
default=user-name
[interop]
appendWindowsPath = false
EOF

exit

一旦仮想マシンを落とす

PowerShell
wsl -t ubuntu21.04-dev

仮想マシンにログインして一般ユーザーになっていることを確認

PowerShell
wsl -d ubuntu21.04-dev

#出力
new-user-name@{device-name}:$

vscodeからUbuntuにアクセス

Remote - WSLのExtensionを入れるだけ
VSコード左下角の><マークを押して New WSL Windows using distro...でディストリビューション名を選択する

仮想マシンの削除

wsl --unregister <ディストリビューション名>

PowerShell
>  wsl --unregister ubuntu21.04-dev

これだけ

サクサク作ってサクサク削除しよう

参考

https://devlights.hatenablog.com/entry/2021/05/29/070000
http://www.y2sunlight.com/ground/doku.php?id=wsl2:ubuntu

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0