2023/09/17

WSL2を仕事で使ってみよう

7年ほど使っていたノートPCを新調した。
私はWindows生活が長いので、今回もWindowsだ。 

Windows11 Home では初回は Microsoftアカウントしかアカウントを作ることができず、ユーザフォルダ名はそのメールアドレスの先頭5文字までを使うという哀しい仕様であることを知った。「それくらい決めさせてくれても良くない??」と思うのは私だけではないようで、検索すると出てきた。変更はできないので別のローカルアカウントを作るしかないことだった。おかげでまだ2アカウントある状態だ。

そういう脱線話はよいとして。

私のソフトウェア開発作業はLinux向けがほとんどだ。
デスクトップPCはストレージに余裕があったし増やしやすいのもあって VirtualBox でやっている。Samba で共有しておけばファイル移動も楽だし、Windows の手慣れたツールを使うこともできて便利である。

が、ノートPCはストレージを増やしにくい。
VDI みたいなサイズが減らしにくいファイルがあると窮屈である。
そこで WSL2 だ。
かなり使えるとは聞いているものの業務として使えるかまでは調べていなかった。
真面目に検討しよう。


まずストレージのことから。

WSL ディスク領域を管理する方法 | Microsoft Learn https://learn.microsoft.com/ja-jp/windows/wsl/disk-space
  • 仮想ハードディスク方式
  • 自動でリサイズされる
  • 初期の割り当てサイズは 1TB

 1TB 確保されるというわけではなく、それだけ割り当てることができますよという値だろう。

 とりあえずインストールしてみよう。

WSL のインストール | Microsoft Learn
https://learn.microsoft.com/ja-jp/windows/wsl/install

ノートPCはまだ一度もWSL2を使ったことが無いのでちょうど良いだろう。


まず wsl --install の実行直後。
昔は Linuxサブシステムを使うための設定を行う必要があったが、最近はコマンドの実行で全部やってくれるようだ。ありがたい。

空き容量が 2GB 減った。
内訳としては「システムと予約済み」が 1GB、「インストールされているアプリ」が 1GB 、「その他」が 0.04GB、「他のユーザー」が 0.03GB だった。
この PC はアカウントが 2ユーザー分あり、自分以外のアカウントが増えたのか WSL の分が増えたのかはよくわからない。
ディストリビューションは選択していないので Ubuntu がインストールされていた。

では、初めて Ubuntu を起動してみよう。
インストールされていたのは「Ubuntu 22.04.2 LTS (GNU/Linux 5.15.90.1-microsoft-standard-WSL2 x86_64)」だった。

空き容量が 2GB 減った。
使用領域は 1.5GB 

「システムと予約済み」が 0.2GB、「インストールされているアプリ」が 1.1GB、「その他」が 0.03GB、「他のユーザー」が 0.07GB 増えていた。

df -h しておく。
ルート / に 1007 GB 割り当てられているのが、初期の割り当て 1TB という部分だろう。

Filesystem      Size  Used Avail Use% Mounted on
none            7.8G  4.0K  7.8G   1% /mnt/wsl
none            237G   79G  159G  34% /usr/lib/wsl/drivers
none            7.8G     0  7.8G   0% /usr/lib/wsl/lib
/dev/sdc       1007G  1.3G  955G   1% /
none            7.8G   84K  7.8G   1% /mnt/wslg
rootfs          7.8G  1.9M  7.8G   1% /init
none            7.8G  928K  7.8G   1% /run
none            7.8G     0  7.8G   0% /run/lock
none            7.8G     0  7.8G   0% /run/shm
none            7.8G     0  7.8G   0% /run/user
tmpfs           4.0M     0  4.0M   0% /sys/fs/cgroup
none            7.8G   84K  7.8G   1% /mnt/wslg/versions.txt
none            7.8G   84K  7.8G   1% /mnt/wslg/doc
drvfs           237G   79G  159G  34% /mnt/c
drvfs           224G   53G  171G  24% /mnt/d
drvfs            17G  2.1G   15G  12% /mnt/g
snapfuse        128K  128K     0 100% /snap/bare/5
snapfuse         73M   73M     0 100% /snap/core22/607
snapfuse         92M   92M     0 100% /snap/gtk-common-themes/1535
snapfuse         54M   54M     0 100% /snap/snapd/18933
snapfuse        151M  151M     0 100% /snap/ubuntu-desktop-installer/967


仕事で使うのは、docker, node, golang、あとは必要に応じて。
docker は community版というのかコマンドライン版というのかを普通にインストール。node は nvs 経由。golang は snap で。
docker は usermod し忘れて Permission denied であせったが、まあそういうこともある。docker daemon は service を使って起動させていた記憶があるのだが、今はマシンを再起動して Ubuntu を立ち上げたときには起動していた。いったいいつ起動するんだろうね。

vscode で WSL にログインする extension を入れておけば、当面は困らないだろう。開くフォルダを変更するたびに vscode を開き直すような大げさな動きをするのだけど、まあこれは remote SSH の動作と同じようにしているためなのかね。

 

こういう感じで、以前 docker を使うようにしていたプロジェクトを GitHub から clone して動かしているが、今のところ問題ない。まあ、問題があったら多いにハマりそうなのは仕方あるまい。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。

注: コメントを投稿できるのは、このブログのメンバーだけです。