将文件(脚本)保存在 WSL 文件系统上有什么好处
Are there any benefits to keep your files (scripts) on WSL filesystem
阅读WSL文档时说:
"Unlike our practice with trying to exclusively install programs and software on Ubuntu, our files and folders need to live exclusively on the Windows FS [...] Windows and Windows Apps can only read and write Windows files, and VSCode will be making our changes."
我理解这背后的原因,事实上,如果使用 VSCode 为例,这一切都是有道理的。但我的问题是:
是否有任何真正原因导致您无法将文件(即脚本)保存在 WSL 文件系统本身上?更具体地说,如果您不打算使用 Windows 文件系统(即您永远不需要 GUI 或其他),将文件放在 Windows 文件系统中是否有意义?
显然,您需要确保备份数据(GitHub 或其他),但除此之外,还有什么缺点吗?我想我的意思是:我可以像使用 VM 一样使用 WSL 吗?我可以将软件和脚本都保存在 WSL 中,与 Windows 文件系统分开吗?
PS:在这种情况下避免使用 VM 的原因是因为我有一台低规格的笔记本电脑,它过去在 VM 方面遇到了很多问题(速度慢,内存不足),到目前为止, WSL好像运行顺手多了
谢谢
是的,如果您想与 Windows 程序共享文件,您可以,并且只将文件放在 Windows 文件系统中。此外,在 Windows 1903 中,您无需将文件放入 Windows 文件系统即可与 Windows 程序共享它们,它们可以访问它们。
在 WSL2 中,他们鼓励您将所有内容都保留在 WSL 文件系统中,以利用文件系统的性能改进。
所以,是的,你可以而且你应该。
简单的回答是肯定的,您可以像使用 VM 一样使用 WSL。 WSL 在很大程度上是成熟的 Linux,您可以使用 Linux 作为您的主要操作系统,忽略您需要从 Windows 中启动它的事实。我还没有尝试过 WSL 2,但据说它是作为 fast VM, which is exactly what you ask for. (Further, the lack of GUIs can be mitigated using built in support for sending X data over SSH to the Windows half of your computer, and display it with an X Server. If I remember correctly, these two articles 实现的,让我完成了大部分工作。)
但是,如果您想学究气,则不能在 WSL 1 上将任何文件与 Windows 文件系统分开存储。如果您 运行 例如Ubuntu,您的 Linux 文件系统总是 包含在 %USERPROFILE%\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState
中,因此从技术上讲它不会是独立的。我无法测试 WSL 2,但根据 this article,WSL 2 也将其数据存储在该文件夹中,就像单个 VDHX 图像一样。大概每个 WSL 发行版都将其数据存储在 Windows 文件系统上。
警告:请勿使用 Windows 工具访问 AppData 中 Linux 文件系统中的文件本身,否则您 运行 high risk of corrupting those files.
阅读WSL文档时说:
"Unlike our practice with trying to exclusively install programs and software on Ubuntu, our files and folders need to live exclusively on the Windows FS [...] Windows and Windows Apps can only read and write Windows files, and VSCode will be making our changes."
我理解这背后的原因,事实上,如果使用 VSCode 为例,这一切都是有道理的。但我的问题是:
是否有任何真正原因导致您无法将文件(即脚本)保存在 WSL 文件系统本身上?更具体地说,如果您不打算使用 Windows 文件系统(即您永远不需要 GUI 或其他),将文件放在 Windows 文件系统中是否有意义?
显然,您需要确保备份数据(GitHub 或其他),但除此之外,还有什么缺点吗?我想我的意思是:我可以像使用 VM 一样使用 WSL 吗?我可以将软件和脚本都保存在 WSL 中,与 Windows 文件系统分开吗?
PS:在这种情况下避免使用 VM 的原因是因为我有一台低规格的笔记本电脑,它过去在 VM 方面遇到了很多问题(速度慢,内存不足),到目前为止, WSL好像运行顺手多了
谢谢
是的,如果您想与 Windows 程序共享文件,您可以,并且只将文件放在 Windows 文件系统中。此外,在 Windows 1903 中,您无需将文件放入 Windows 文件系统即可与 Windows 程序共享它们,它们可以访问它们。
在 WSL2 中,他们鼓励您将所有内容都保留在 WSL 文件系统中,以利用文件系统的性能改进。
所以,是的,你可以而且你应该。
简单的回答是肯定的,您可以像使用 VM 一样使用 WSL。 WSL 在很大程度上是成熟的 Linux,您可以使用 Linux 作为您的主要操作系统,忽略您需要从 Windows 中启动它的事实。我还没有尝试过 WSL 2,但据说它是作为 fast VM, which is exactly what you ask for. (Further, the lack of GUIs can be mitigated using built in support for sending X data over SSH to the Windows half of your computer, and display it with an X Server. If I remember correctly, these two articles 实现的,让我完成了大部分工作。)
但是,如果您想学究气,则不能在 WSL 1 上将任何文件与 Windows 文件系统分开存储。如果您 运行 例如Ubuntu,您的 Linux 文件系统总是 包含在 %USERPROFILE%\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState
中,因此从技术上讲它不会是独立的。我无法测试 WSL 2,但根据 this article,WSL 2 也将其数据存储在该文件夹中,就像单个 VDHX 图像一样。大概每个 WSL 发行版都将其数据存储在 Windows 文件系统上。
警告:请勿使用 Windows 工具访问 AppData 中 Linux 文件系统中的文件本身,否则您 运行 high risk of corrupting those files.