在 wsl 上设置新的 ubuntu 发行版后如何删除旧文件?

在 wsl 上设置新的 ubuntu 发行版后如何删除旧文件?

我卸载了旧的 Ubuntu 发行版,然后安装了新版本。但我不知道旧文件是否被删除了。如果这些文件仍在我的电脑上,我该如何找到它们?

答案1

根据评论,您使用了:

wsl --unregister <distribution>

如果是这样的话,那么是的,全部无论是 WSL1 还是 WSL2,旧发行版的主文件系统中的文件都已被删除。

如果发行版基于 WSL1,如果你--unregister编辑了它,你可能会在 Windows 用户配置文件下的文件夹中找到这些文件。它应该是这样的:

C:\Users\<your_Windows_user>\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\rootfs

也就是说,你应该仅有的以这种方式访问​​文件是绝对的最后手段,因为它可能导致 WSL1 文件系统损坏。

使用 WSL2,你的文件将以类似的方式存储在虚拟 SDD 中:

C:\Users\<your_Windows_user>\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\ext4.vhdx

这是 Hyper-V 虚拟磁盘格式。

将要由于此时您已重新安装,因此您的文件系统上很可能有该文件。当然,您不应尝试修改或移动该文件,否则 WSL2 将无法访问 Ubuntu 文件系统。


附注:值得一提的是,您使用--unregister仅来自 Ubuntu/WSL 文件系统。如果您将任何文件存储在其他位置,那么这些文件将要仍然存在。例如,你可能在 WSL/Ubuntu 中保存了类似以下文件:

/mnt/C/projects/learningruby

Windows 上的文件C:\当然,不是删除--unregister,因为这将是一件非常危险的事情。如果您存储了任何文件外部Ubuntu 中,它们仍然存在。WSL 根本无法安全地删除它们。

相关内容