问题在于,启用 systemd 会以某种方式更改 /proc/sys/fs/binfmt_misc/
文件(或类似文件?)中的 WSLInterop.conf 条目丢失了。
我在这里重写了答案,而不是直接链接,因为原来的参考线程越来越长,而且有死链接。
单行本解决了这个问题。
解决方案(从这里开始)是替换该文件。Windows 可执行文件以两个字母 MZ 开头
当试图运行以这两个字母开头的文件时,下面的命令会告诉 Linux 该怎么做。
sudo sh -c ‘echo :WSLInterop:M::MZ::/init:PF > /usr/lib/binfmt.d/WSLInterop.conf’.
sudo systemctl restart systemd-binfmt
我使用的是本帖链接中的 23.04 映像
我猜这可能是打包或安装过程中的错误,但我不知道该向谁反映。
