清除坏驱动器安装/etc/fstab

清除坏驱动器安装/etc/fstab

我使用 Windows 11 作为操作系统。其内部版本号为:22000.348

我从商店安装了 Debian,然后安装了 Windows Subsystem for Linux Preview。

WSL 版本为:2

Debian 运行正常,没有任何问题。但是当我运行适用于 Linux 的 Windows 子系统预览版应用程序中,出现此错误:

使用 mount -a 处理 fstab 失败。

[进程退出,代码为 1 (0x00000001)]

  • 为什么会发生这种情况?
  • 我怎样才能防止这种情况发生?
  • 适用于 Linux 的 Windows 子系统应用程序有什么作用?

答案1

从评论来看,这听起来可能是由于从商店安装的 WSL 预览版中存在某种错误。

最终(也是从评论中得出的结论),问题在于其中一个 Docker WSL 实例成为了 WSL 的“默认”实例。因此,专门运行“Debian”发行版是可行的。wsl.exe但是,运行 WSL 应用程序(运行)试图启动 docker 映像,而该映像不应直接访问(并导致错误fstab)。

这是通过wsl -l -v将 Docker 镜像显示为默认值发现的。

解决方案是使用:

wsl -s Debian

...设置默认分布。

虽然这不一定是一个“错误”,但有一个打开 Github 问题建议 WSL 具有一种机制,允许docker-desktop-data(以及其他不应该由最终用户运行的发行版)“隐藏”。

答案2

扩展NotTheDr01ds的答案:

如果您需要安装其他发行版,例如 ubuntu,您可以通过以下方式安装:

wsl --install
#Warning - may break docker desktop!

然后您可以将该发行版设为默认发行版,而不是不起作用的 docker 集成。

但是,这可能会破坏您的 docker 桌面集成。

答案3

清除坏驱动器安装/etc/fstab

在我的例子中,fstab 安装了一个坏驱动器。我删除了该行/etc/fstab,一切正常。

也看到了这个评论WSL 问题来帮助我解决这个问题。

相关内容