
WSL 分为两个版本,一个是 WSL1,一个是 WSL2,WSL2 是 WSL1 的升级版,主要优势是:
WSL2 建议不要跨 *** 作系统使用文件,若想获得最快的性能速度,请将文件存储在 WSL 文件系统中,在存储时,使用 Linux 文件系统根目录: wsl$Ubuntu-20.04home Project 。
访问 WSL2 文件系统,可以运行命令WIN+R 或在文件资源管理器地址栏中键入 wsl$ ,以查找相应的分发名称并访问其根文件系统。
大多数情况下我们会使用 WSL2,但在以下情况,请考虑使用 WSL1:
可以使用localhost 从 Windows 上访问 Linux 分发版中的应用。
如果要从 Linux 分发版访问 Windows 上运行的网络应用,则需要使用主机的 IP 地址。你可以执行以下步骤来使其可行。
当使用远程 IP 地址连接到应用程序时,它们将被视为来自局域网 (LAN) 的连接。这意味着你需要确保你的应用程序可以接受 LAN 连接。例如,你可能需要将应用程序绑定到0.0.0.0 而非 127.0.0.1 。
当使用 WSL 1 分发版时,如果计算机设置为可供 LAN 访问,那么在 WSL 中运行的应用程序也可供在 LAN 中访问。
这不是 WSL 2 中的默认情况,WSL 2 有一个带有其自己独一无二的 IP 地址的虚拟化以太网适配器。目前,若要启用此工作流,你需要执行与常规虚拟机相同的步骤。下面是一个示例 PowerShell 命令,用于添加侦听主机上的端口 4000 的端口代理并将其连接到端口 4000,并使用 IP 地址 192.168.101.100 连接到 WSL 2 VM。
使用wsl 可以在 CMD 或 PowerShell 运行 Linux 命令,示例:
以这种方式运行的命令使用的是同一个工作目录,并且以 WSL 默认用户的身份运行,拥有与调用方进程和终端相同的 Windows 管理权限。
WSL 可以使用[tool-name].exe 直接从 WSL 命令行运行 Windows 工具。例如, notepad.exe 。
以这种方式运行的应用程序具有相同的工作目录,拥有与 WSL 进程相同的权限,以活动 Windows 用户的身份运行,显示在 Windows 任务管理器中。
WSL 还有一些高级用法,比如更改磁盘大小,文件权限,环境变量等,具体配置可以参考官方文档。
现在不是有wubi版的ubuntu么?直接在windows下运行ubuntu里的wubi文件,(注:ubuntu.iso的镜像文件要和wubi.exe在同一目录下。最好拔掉网线安装,不然它会检查下载更新。),然后就会进入安装配置界面(选择安装盘,设置系统密码和语言)。等他复制完安装文件后会要求重新启动电脑。重新启动电脑后,注意进入dos界面的时候,在你ghost那选择地方会多出一个Ubuntu的选项来,点它进去,就开始安装Ubuntu了。安装完毕后又会自动重新启动一次,再次选 Ubuntu就进入这个系统了。然后你就可以用他里面的软件管理器更新和下载需要的软件。我家是自己安装的3系统:win7x64 + winXPsp3 + Ubuntu10.1纯手工输入!希望采纳!WSL(windows subsystem for linux)是在windows系统下运行的linux子系统,当我们需要linux环境的时候,用虚拟机性能损耗会非常严重,这时候我们可以选择使用WSL。这篇文章介绍了我在安装和使用WSL中的一些坑,希望将来的人能少走弯路。
参考微软的文档 https://docs.microsoft.com/zh-cn/windows/wsl/install-win10 安装。
我遇到的一些问题:
配制Ubuntu镜像 https://developer.aliyun.com/mirror/ubuntu
可以在windows下安装docker desktop,然后设置使用wsl2的引擎使用。
或者在docker的官网上按照教程安装docker。
静进入网址: https://cr.console.aliyun.com/cn-hangzhou/mirrors
此处需要一个阿里云的账号,没有的话可以使用支付宝登录
登录进去会跳转到 容器镜像服务,需要密码
接下来按照里面的教程进行设置即可
在windows的vscode里安装Remote WSL插件之后可以在linux的子系统中通过输入code命令使用vscode。
文件共享也非常方便,启动WSL命令行的时候,默认访问的便是我们Windows的用户目录。
而要从Windows下访问Linux中文件,则可通过网络磁盘映射:\wsl$\Ubuntu 路径,这样整个Linux文件系统都可以暴露给Windows。
如果要在 Linux 分发版中构建网络应用(例如,在 NodeJS 或 SQL server 上运行的应用),可以使用 localhost 从 Windows 应用(如 Edge 或 Chrome Internet 浏览器)访问它(就像往常一样)。
但是,如果运行的是较旧版本的 Windows(版本 18945 或更低版本),则需要获取 Linux 主机 VM 的 IP 地址(或 更新到最新的 Windows 版本 )。
若要查找为 Linux 分发版提供支持的虚拟机的 IP 地址,请执行以下 *** 作:
如果要从 Linux 分发版(即 Ubuntu)访问 Windows 上运行的网络应用(例如,在 NodeJS 或 SQL 服务器上运行的应用),则需要使用主机的 IP 地址。 虽然这不是一种常见方案,但你可以执行以下步骤来使其可行。 - 通过在 Linux 分发版中运行以下命令来获取主机的 IP 地址: cat /etc/resolv.conf - 复制以下词语后面的 IP 地址: nameserver 。 - 使用复制的 IP 地址连接到任何 Windows 服务器。
当使用远程 IP 地址连接到应用程序时,它们将被视为来自局域网 (LAN) 的连接。 这意味着你需要确保你的应用程序可以接受 LAN 连接。
例如,你可能需要将应用程序绑定到 0.0.0.0 而非 127.0.0.1 。 以使用 Flask 的 Python 应用为例,可以通过以下命令执行此 *** 作: app.run(host='0.0.0.0') 。 进行这些更改时请注意安全性,因为这将允许来自你的 LAN 的连接。
当使用 WSL 1 分发版时,如果计算机设置为可供 LAN 访问,那么在 WSL 中运行的应用程序也可供在 LAN 中访问。
这不是 WSL 2 中的默认情况。 WSL 2 有一个带有其自己独一无二的 IP 地址的虚拟化以太网适配器。 目前,若要启用此工作流,你需要执行与常规虚拟机相同的步骤。
WSL2 分发版目前无法访问纯 IPv6 地址。
参考资料:
https://www.jianshu.com/p/6b02948b3d37
https://www.liumingye.cn/archives/326.html
https://zhuanlan.zhihu.com/p/104771275?utm_source=cn.wiz.note
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)