当前位置: 首页 > news >正文

Windows Linux 子系统 (WSL) 上的 Ubuntu

大家好!我是大聪明-PLUS

如果您使用Windows作为主要(或唯一)操作系统,那么开始使用Ubuntu最快捷、最方便的方式就是直接在 Windows 中使用内置的 Linux 内核。Windows中提供的这一功能无需虚拟机管理程序,也无需双启动或多启动配置。Linux 内核在基于Hyper-V组件的轻量级虚拟环境中运行,确保最小的开销和高性能。安装后,所选的 Linux 发行版将完全集成到 Windows 系统中,使开发人员能够以最少的硬件和时间投入利用这两个操作系统。甚至可以使用WSL (适用于 Linux 的 Windows 子系统)运行图形化 Linux 应用程序,尽管在实际操作中很少需要这样做。

开始之前你需要知道什么
  • WSL 有两个版本:WSL 和 WSL 2。当人们谈论 WSL 时,他们通常指的是后者。

  • WSL 支持具有二级地址转换 (SLAT) 功能的 x64 和 ARM 处理器(所有现代处理器都支持此功能)。

  • 安装需要 Windows 10 版本 2004+ 或 Windows 11。但是,为了避免潜在问题,建议使用 Windows 专业版(或企业版/教育版)而不是家庭版。

使用 WSL 的优点和缺点

优点:

  • WSL 所需的资源(CPU、RAM 和磁盘空间)比完整的虚拟机要少,例如,如果没有 Windows 进程的打开文件句柄,WSL 虚拟机将自动关闭。

  • 与双启动不同,WSL 不需要重新启动计算机来在操作系统之间切换。

  • Windows 文件系统可直接集成到 Linux 中,反之亦然。能够在 Windows 中使用 Linux 应用程序,反之亦然。WSL 支持各种开箱即用的应用程序、实用程序、IDE 等。

  • 开源内核。

缺点:

  • 与多重启动或完全虚拟化相比,客户操作系统与主机操作系统的隔离性较低。

  • 缺少发行版的图形界面。其他一些小限制。

  • 由微软开发,而不是 Linux 社区,将来可能会失去交叉兼容性。

安装 WSL 和 Linux 发行版
  1. 要启用运行 WSL 所需的功能,请从提升的命令提示符运行以下命令:

    wsl.exe --install
    

    接下来,您可以检查已安装的 WSL 版本,它应该是 2+:

    wsl --version
    

    或者(也将显示默认分布):

    wsl --status
    
  2. 要查看可从 Microsoft Store 下载的 Linux 发行版,请运行以下命令:

    wsl --list --online

    您可以通过微软商店本身或终端安装所选的发行版。如果没有所需的发行版,您可以从互联网或 .tar 文件导入。

    使用以下命令安装 Linux 发行版:

    wsl --install --distribution <Name>   
    

    安装完成后(安装过程将显示在终端中),系统将提示您创建新用户。输入用户名和密码后,操作系统即可使用。您可以输入exit来关闭 Bash shell 。

    要将某个分布设置为默认分布:

    wsl --set-default <Name>   

    接下来我们可以查看已安装的 Linux 发行版及其状态(停止/运行):

    wsl --list --verbose

    请注意,如果您只是关闭了 Bash shell,分发可能会自动终止或继续运行,除非您强制终止它。

    如果您需要删除 Linux 发行版及其相关数据:

    wsl --unregister <Name>   
    
  3. 可以使用以下命令获取 WSL 帮助:

    wsl --help
    
使用 WSL
  1. 现在可以使用以下命令从终端启动默认的 WSL 发行版:

    wsl   
    
    wsl ~   
    

    您可以使用exit命令退出正在运行的终端。

    如果有多个发行版,您可以通过名称访问来启动特定的发行版:

    wsl --distribution <Name>   
  2. 如上所述,如果关闭正在运行的发行版的所有终端,它会在一段时间后自动停止。但是,你可以使用以下命令强制终止它,该命令将自动关闭所有打开的终端:

    wsl --terminate <Name>   

    您还可以关闭所有正在运行的发行版,然后重启正在运行的虚拟机。更改内存使用限制或修改配置文件时可能需要执行此操作:

    wsl --shutdown
    
  3. 如上所述,Linux 和 Windows 文件系统是集成的。系统会自动创建计算机硬盘的挂载点,方便从 Linux 轻松访问 Windows 文件系统。例如,在 Ubuntu 中C:\\可以通过路径访问 Windows 驱动器/mnt/С/。在 Windows 中,可以通过网络路径访问 Ubuntu 根目录\\wsl.localhost\Ubuntu。但是,请记住,每个操作系统都有其与广义上的文件系统相关的特定功能,例如区分大小写或可接受的文件名,因此在文件系统之间移动文件和目录(文件夹)时应谨慎操作。

    Windows 应用程序可以在 Linux 中运行,例如以下命令将在当前文件夹中打开资源管理器:

    explorer.exe .   
    

    相反,运行以下命令将在 Windows 中打开 Nano 控制台文本编辑器:

    wsl nano test.txt   
    

    在此示例中,我们首先启动默认发行版,然后使用参数调用其中的程序,最后退出并返回 Windows 命令提示符。也就是说,没有打开 Bash 命令 shell 来执行此命令。

  4. 说到集成,不得不提的是,许多应用程序都开箱即用地支持 WSL。例如,Docker Desktop 允许你使用 WSL 同时运行 Windows 和 Linux 容器。例如,PyCharm(JetBrains 推出的一款用于 Python 开发的 IDE)就提供了使用 WSL 中安装的解释器的功能。Windows 终端可以直接打开 Bash 命令 shell,而无需在 PowerShell 命令行中使用wsl命令。

Windows 终端中的命令提示符菜单

  1. 在安装跨平台开发应用程序时,您可能会想知道应该将它们安装在哪里:在 WSL 中还是在 Windows 上。每个用户都必须自己回答这个问题,并考虑以下几个因素:WSL 发行版可以重新安装、回滚和复制,因此最好不要在那里安装重量级软件。并且最好不要在主机操作系统上安装必要性存疑的软件。因此,如果您需要为单个项目使用 Python 解释器,则可以将其安装在 WSL 发行版上;但如果您使用 Python 进行开发,那么使用 WSL 安装 PyCharm 和 Python 解释器是否合适值得怀疑。

  2. 要将 WSL 发行版(Linux 虚拟机)数据从一个磁盘迁移到另一个磁盘,您需要导出、删除该发行版,然后将其导入到新位置。首先,您需要(在已完成的发行版上)进行备份:

    wsl --export <Name> <Backup_path>   
    

    然后,您可以使用命令删除分发unregister(参见上文),然后将分发导入到新的存储位置:

    wsl --import <Name> <Base_path> <Backup_path>   
    
笔记
  1. 如果在安装 WSL 时遇到错误,则需要确保在 UEFI(BIOS)中启用了虚拟化(通常此选项位于 CPU 设置部分),确保启用了可选的虚拟机平台功能(控制面板 -> 程序 -> 打开或关闭 Windows 功能 -> 虚拟机平台),或者通过在具有管理员权限的命令提示符中运行以下命令来启用它:

    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    

    您还需要确保在启动配置中启用了虚拟机管理程序启动。您可以通过从提升的命令提示符运行以下命令来检查这一点:

    bcdedit /enum | findstr -i hypervisorlaunchtype
    

    如果您看到Off参数值,则表示虚拟机管理程序已被禁用,您需要通过在具有管理员权限的命令提示符中运行以下命令来启用它:

    bcdedit /set hypervisorlaunchtype Auto
    
  2. 如果您在安装或操作过程中遇到任何其他错误,

  3. 您可以在虚拟机中运行 WSL;为此,您需要在虚拟机中手动启用嵌套虚拟化。例如,如果您在 Hyper-V 中运行的虚拟化 Windows 计算机上安装 WSL,则需要在虚拟化主机(而不是虚拟机)的命令提示符中以管理员权限运行以下命令:

    Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true   
    
  4. 如果您需要在 Linux 上运行 Web 服务器,请记住,如上所述,为了确保发行版不会关闭,您必须为 Windows 进程保留至少一个打开的文件描述符。简单来说,您必须保留至少一个运行发行版 Bash 命令 shell 的终端。

  5. 通过 WSL,
    您可以在 Windows 上运行图形化Linux应用程序。

http://www.dtcms.com/a/553822.html

相关文章:

  • ftp工具下载网站源码教程手机视频wordpress
  • LeetCode 二叉树 437. 路径总和 III
  • 【GoLang】【框架学习】【GORM】4. 使用 BeforeUpdate hook 操作时,出现反射报错
  • 有哪些好点的单页网站公司管理制度完整版
  • 庭田科技亮相成都复材盛会,以仿真技术赋能产业革新
  • 网站安全认证去哪做国内十大咨询公司排名
  • Maven高级-分模块设计与开发
  • markdown转为pdf导出
  • python - day 11
  • 污水处理厂三菱FX5U系列PLC通过Modbus TCP转CCLKIE工业智能网关和多个不同的仪表进行通讯案例
  • 东莞专业网站设计建站公司无锡网站推广优化费用
  • 海南网络公司网站建设wordpress 禁止收录
  • 哪里有学习做网站的html网站模板 免费
  • 网站中的表格phonegap下载
  • JAVA攻防-专题漏洞SPEL表达式SSTI模版Swagger接口Actuator泄露Spring特检
  • vue-day03
  • 高效稳定的命理测算平台:基于Linux+Nginx+PHP+MySQL的技术架构解析
  • 威海做网站哪家好西数网站助手
  • 企业商旅平台推荐:合思——全流程合规管控与生态协同标杆
  • 专业电商网站开发自己做图网站
  • 【flutter报错:Build failed due to use of deprecated Android v1 embedding.】
  • git 命令里的存档和检出的区别
  • 杰理芯片SDK-杰理SDK工程框架介绍
  • 家教中介网站怎么做学员引流用万网做网站
  • C# TaskCompletionSource.SetResult 用法详解
  • 网站建设模板html网站开发工程师岗位职责要求
  • 【Linux network和NetworkManager双网卡主备模式绑定】
  • SSO 单点登录
  • Linux 中如何查看系统的位数
  • 云南建设企业网站修改wordpress首页缩略图尺寸