VSCodeがWSL上で起動しなくなった

VSCodeをアップグレードしてWSL上で起動しようと思ったら

$ code .
/mnt/c/Program Files/Microsoft VS Code/bin/code: 61: /mnt/c/Program Files/Microsoft VS Code/Code.exe: Exec format error

といったエラーが表示されて起動しなくなりました。

ググったところでsystemdを有効にしていると問題が発生するようで、githubに以下の解決法が載ってました。

まずWSL上で以下のコマンドを実行します。

$ sudo sh -c 'echo :WSLInterop:M::MZ::/init:PF > /usr/lib/binfmt.d/WSLInterop.conf'

その後、WSLを終了させて再起動するとVSCodeが起動できるようになりました。

PS > wsl --shutdown

参考:[WSL2][systemd][interop] Unable to Execute Windows Binary when systemd enabled #8843