【问题标题】:Changing path to WSL remote更改 WSL 远程的路径
【发布时间】:2021-11-02 16:07:23
【问题描述】:

我对 VS Code 和 WSL 远程扩展有疑问。在我的机器上,Windows Defender 防火墙阻止了 node。我没有足够的权限来取消阻止它,但管理员创建了排除文件夹,根据他们所说的“我可以复制我需要的所有内容,并且它被排除在 Windows Defender 防火墙检查之外”。所以我在那里复制了 VS Code,但我还需要在那里复制带有 Debian Linux 的软件包并将其链接到新路径。

但我无法找到此 Debian 路径的存储位置,以及如何更改它。对我来说,文件夹现在在 C:\Users\{username}\AppData\Local\Packages\TheDebianProject.DebianGNULinux_... 需要移动到C:\排除文件夹

这可能吗?非常感谢您的回复。

【问题讨论】:

    标签: node.js windows-subsystem-for-linux vscode-extensions windows-defender exclusionpath


    【解决方案1】:

    首先,您可能能够以稍微不同的方式解决您的防火墙问题。我不能肯定地说(而且事情总是在变化),但我的经验是 Firewall/Defender 只检测和阻止 WSL1 应用程序。这至少对于恶意软件/防病毒检测是正确的,但我相信它也会扩展到防火墙功能。另一方面,如果没有,那么将实例移动到其他目录可能对您的问题没有帮助。

    您可以使用wsl -l -v 仔细检查您的 Debian 实例的版本。如果是版本 1,那么让我们尝试将其转换为 2(如果您的系统具有该权限)。

    无论您只是转换实例还是移动它,这里的第一步都是相同的:

    • 首先,退出您的 WSL/Debian 实例,然后发出 wsl --shutdown。您可以从 PowerShell、CMD 或开始菜单执行此操作;但我将假设您在 PowerShell 中的其余说明。

    • 在 PowerShell 中运行以下命令:

      cd <your exclusion directory>
      mkdir wsl\images
      cd wsl\images
      wsl --export Debian 2021-11-02_Debian_backup.tar
      
    • 假设您的实例是 WSL1,并且您想尝试转换为 WSL2,那么您至少现在有一个备份。运行 wsl --set-version Debian 2 将其转换为 WSL2。然后启动它,看看node 的行为方式是否有任何差异。当然,您可以随时使用wsl --set-version Debian 1 将其转换回来。

    • 如果您仍然需要尝试移动它:

      cd <your exclusion directory>\wsl
      mkdir instances\debian_exclude
      wsl --import debian_exclude instances\debian_exclude images\2021-11-02_Debian_backup.tar --version 2
      wsl -d debian_exclude
      

      请注意,您当然可以随意调用文件名和目录。另请注意,您可以在导入时更改版本号。在那里选择您需要的任何 WSL 版本。

    • 您现在应该在一个新的 Debian 实例中,但默认情况下您将以 root 身份运行。您需要通过使用以下内容创建/etc/wsl.conf 来设置导入实例的默认用户:

      [user]
      default=<your_wsl_username>
      
    • 退出实例,运行另一个wsl --shutdown,然后重新启动。您现在应该以普通用户身份运行。再次尝试node 以查看新位置是否允许将其从防火墙规则中排除。

    • 如果一切正常,您可以wsl --unregister Debian 删除旧实例。请注意,这将删除实例中的所有文件,因此请确保您的备份和新实例首先拥有您需要的一切。

    • 注销旧实例应该将新实例设置为默认值,但如果没有,您可以使用wsl --set-default debian_exclude

    【讨论】:

      猜你喜欢
      • 2016-07-28
      • 1970-01-01
      • 2021-12-17
      • 2016-05-23
      • 1970-01-01
      • 1970-01-01
      • 2013-04-03
      • 1970-01-01
      相关资源
      最近更新 更多