Windows11 にしたら WSL2 でシステムドライブ (C:) がマウントできなくなったので解決した話

Windows,お役立ち情報,プログラムUbuntu,Windows11,WSL

先日、2021 年 8 月 3 日に Windows11 へアップグレードが入りました。アップグレードしたら WSL で Windows のシステムドライブ(C ドライブとか)が見えなくなったので解決方法をメモします。解消はしましたが原因究明はできてません。WSL をアップデートしたら治ったよ、という話です。

Windows11 にアップグレードした

エディション Windows 11 Home
バージョン 21H2
インストール日 ‎2021/‎08/‎03
OS ビルド 22000.100
シリアル番号 YZ0402AB
エクスペリエンス Windows Feature Experience Pack 421.18901.0.3

私が Windows Insider Program の Beta channel に入っているため早くアップグレードされました。いわゆる人柱ってやつですね。

WSL でシステムドライブがマウントできなくなった

私は WSL の home ディレクトリに /mnt/c/Users/username/Desktop とか /mnt/c/Users/username/Download へのシンボリックリンクを用意して Windows のファイルにアクセスできるようにしているのですが、なぜかデッドリンクになっていました。

おかしいなと思って WSL の Ubuntu を再起動してやると最初にメッセージが現れました。

ファイルシステムの 1 つをマウント中にエラーが発生しました。詳細については、「dmesg」を実行してください。

また ls /mnt/c としても何も出てこないので、どうもマウントに失敗しているようです。

「dmesg を見ろ」と出るので見てやるといくつかエラーが出るのですが、重要そうなのはこれです。

init: (1) ERROR: MountPlan9WithRetry:285: mount drvfs on /mnt/c (cache=mmap,noatime,msize=262144,trans=virtio,aname=drvfs;path=C:\;uid=1000;gid=100;symlinkroot=/mnt/

解決方法

エラー文で検索したら reddit の投稿が出てきました。シンプルに「WSL をアップデート」したら解決しました。まずは スタートボタンを右クリックして出てくるメニューから「Windows ターミナル(管理者)」を選択します。

スタートボタンを右クリック

起動したら以下のコマンドを使って wsl のアップデートと再起動を行います。

wsl.exe --update
wsl.exe --shutdown

update には数分程度かかりました。

これで Ubuntu を再起動すると無事にマウントされていました。めでたしめでたし。(原因は不明ですが……ちゃんと普段からアップデートかけよう)

余談: 確認ダイアログの表示が変

「Windows ターミナル(管理者)」 を起動すると、よく見るダイアログが出てきてシステム変更の許可を尋ねられるのですが、やはり Beta 版なのかちょっと表示がおかしくなっていました。

色々気になるところがありますが、一番下のボタンは通常「はい」か「キャンセル」だと思います。しかしここでは「このアカウントを記録する」「C」になっています。「C」はキャンセルの C でしょうか?

正直システム変更を伴う確認ダイアログの表示がおかしいのは大変不安ですね。ただ、Windows を再起動したら正常になったので、原因はよくわかりません。

ちなみにツイートでは「日本人にはまだ Windows11 は早かった」とか愚痴ってますが、フランス語設定でも表示はおかしくなっていたそうです。同じく再起動したら戻ったとのことでした。そこら中に “Oui" (= ウィ、Yes 的な意) が紛れ込んでいたそうです。(Ouindows じゃん、と突っ込んでしまった)

参考資料