首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在WSL2上安装nvm时,我可以在Windows本身中使用它吗?

在WSL2上安装nvm时,我可以在Windows本身中使用它吗?
EN

Stack Overflow用户
提问于 2021-08-11 20:04:30
回答 1查看 1.3K关注 0票数 1

我希望在我的Windows机器上安装node.js,并且我希望使用nvm来这样做。在我所知道的windows机器上安装实际nvm的唯一方法是使用WSL (我目前正在考虑使用WSL2,但如果有使用1的原因,请告诉我,我没有经验)。据我所知,WSL有点类似于(或者是?)虚拟机,在这种情况下,只有当我想在WSL中使用node.js时,才能在WSL中安装nvm。或者,我错了,而且有一些魔法在起作用,使Windows本身能够使用安装在WSL中的nvm吗?

简言之:

WSL上的nvm -> node.js on WSL

基于WSL的-> node.js上的nvm

我知道WSL只允许我安装一些linux发行版。只是为了争论,我才说“安装在WSL上”。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-11 20:49:55

在Windows上运行nvm的唯一受支持的方法是通过WSL,这是正确的。有一个单独的(与“原始”nvm无关的) nvm-窗口项目,但我不能谈论它的质量。在“亲”方面,我确实看到微软在他们的一些NodeJS文档中引用了它。但作为一个“骗局”,它似乎是在大约3年前的某个地方更新的。这可能是问题,也可能不是问题。

是的,如果在WSL下使用nvm,它只会安装Linux版本。您不能使用它来管理针对Windows的节点安装。正如@ThomasUrban在评论中指出的那样,安装Windows节点版本甚至可能会在试图安装nvm时造成问题。

我个人更喜欢N,但它也会有类似的限制。

这确实是一个单独的问题,也许应该单独发布,但WSL2和WSL1确实是相辅相成的。我要从我之前做过的Reddit文章中复制/粘贴:

  • WSL2相对于WSL1:的优势
    • 真正的Linux内核,它允许像Docker这样的特性在本地运行。另一方面,WSL1试图将Linux映射到等效的Windows,从而模拟Linux。
    • 真正的网络栈,允许VPN,隧道等。
    • ext4性能略好于WSL1
    • 通过使用虚拟硬盘(.vhdx),使文件系统更加健壮

  • WSL2与WSL1:相比的缺点
    • NTFS/drvfs性能要慢得多。说真的,WSL内核回购的git clone在WSL1上需要几秒,而在WSL2上大约需要10分钟。如果您需要处理NTFS上的文件,请为此保留一个WSL1实例。

Windows 1的网络堆栈是伪桥接的,因此网络服务可以直接从

代码语言:javascript
复制
- The network is on a virtual NIC "behind" the Windows host.  This means that if you run a service (e.g. ssh or http) on the WSL2 instance, it will not be available to other devices on your network without some hacky port-forwarding.

主机IP地址访问。

因此,如果您正在使用WSL进行一些类似的开发,如React/ result /Svelte/Vue/etc,则从网络的角度来看,WSL1更简单。

因此,也许令人惊讶的是,对于许多Node开发人员来说,WSL1可能是更好的选择。您可以随时安装第二个副本,并使其成为WSL2 -两者将一起运行。

最后一点是:

我知道WSL只允许我安装一些Linux发行版。

你可能会大吃一惊。虽然在Microsoft中有一些预先打包的发行版,但WSL几乎可以导入任何发行版(Microsoft称其为“任意”)。见这位医生

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68748336

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档