【Windows 11】安装 Android子系统 和 Linux子系统

本文使用电脑系统:
在这里插入图片描述

文章目录

  • 一、安卓子系统
    • 1.1 安装 WSA
    • 1.2 使用
  • 二、Linux子系统
    • 2.1 安装 WSL 以及WSL 相关概念
    • 2.2 安装一个Linux发行版
      • 2.21 从Microsoft Store 安装
      • 2.22 用命令安装
    • 2.23 拓展
  • 三、拓展
    • 3.1 存储位置
    • 3.2 虚拟化技术
    • 3.3 Windows 虚拟内存
    • 3.3 wsl 帮助文件

一、安卓子系统

1.1 安装 WSA

主要就是安装一个名为:适用于Android的Windows子系统(WSA)的软件。

首先在电脑的设置里面:时间和语言——语言和地区里面把地区改为美国。

然后到微软商店搜索:Amazon AppStore

在这里插入图片描述

安装亚马逊应用商店的时候,会首先提示你安装前面说的WSA。如此,我们的目的就达成了。
在这里插入图片描述
至于亚马逊应用商店,不推荐使用了,他已经停止在国区的服务了。你可以注册一个美区的账号登录,自己去看(没必要)。

1.2 使用

现在,做一些设置之后就可以安装安卓APP了。

搜索栏搜Windows功能,在启用或关闭Windows功能里面,确保“虚拟机平台”、“Hyper-V”是勾选了的。同时,为了安装Linux子系统,这里把“适用于Linux的Windows子系统”也顺便勾选了。勾选之后,保存,重启电脑。(如果有关于WSL即Linux子系统的报错或提示,不要管)
在这里插入图片描述

打开WSA,在这里共享文件夹。目的:使安卓子系统可以访问Windows用户的文件,这样就可以安装我们下载到Windows的apk安装包了。
在这里插入图片描述

关闭WSA,去下载你要安装的软件的apk安装包,自己去网上搜就行,这种网站应该很多,我用的是:https://apkpure.com/cn/app(好像需要魔法)

把安apk装包保存到电脑的下载文件夹,或者用户文件夹下面的其他目录也可以。

打开WSA,点击系统——文件,来到这个界面:就是拿你Windows的部分存储空间模拟Android系统。
在这里插入图片描述

点击Windows,进去找到你保存的apk,单击,会弹出选项,选择安装即可。可能会报错,再试一次即可。

安装完成后就可以像使用其他Windows 软件一样打开了。

在这里插入图片描述


注:

现在先不要安装太多APP,等一下安装Linux子系统后可能会感染安装子系统,具体表现就是:启动安装APP的时候显示WSA已停止工作。 (我遇到了)

这时,在设置里面重置WSA就可以了,设置和安装的软件都会被清除,再重新走一遍流程就好了。
在这里插入图片描述

二、Linux子系统

2.1 安装 WSL 以及WSL 相关概念

在上一步,我们已勾选了“适用于Linux的Windows子系统”(WSL:Windows Subsystem for Linux)和“虚拟机平台”。

WSL 是一个为Windows 10和Windows Server 2019设计的兼容层,用于在Windows上运行Linux二进制可执行文件。以下是关于WSL的一些关键信息:

  1. 兼容性:WSL使您可以在Windows上运行Linux发行版的大多数命令行工具、应用程序和实用程序,而无需启动虚拟机或使用双启动。

  2. 集成:您可以在Windows和Linux之间无缝地移动文件,甚至可以在Windows的文件资源管理器中访问Linux文件。

  3. 性能:由于WSL是一个轻量级的兼容层,而不是完整的虚拟机,所以它的性能开销非常小

  4. 开发者友好:WSL对开发者特别有用,因为它允许他们在Windows上使用Linux的开发工具,并在同一台机器上测试跨平台应用程序。

  5. 版本:WSL有两个版本,WSL 1和WSL 2。WSL 2引入了一个完整的Linux内核,提供了更好的性能和完整的系统调用兼容性。


从“Windows功能”中启用的WSL版本是WSL 1

建议使用WSL 2,去微软商店搜索WSL,即可看到(微软官方的那个),安装它。

在这里插入图片描述

1 和 2的对比:

特性/方面WSL1WSL2
架构兼容性层完整的Linux内核
性能文件系统性能较慢尤其在使用Linux原生文件系统时更快
系统调用有限支持完全的系统调用兼容性
Docker支持有限原生支持
网络与主机共享IP使用自己的IP地址
文件系统通过DrvFs访问Windows文件通过9P协议访问Windows文件
启动时间更快由于VM启动而略慢(其实很快)
内存使用较低由于VM而使用更多内存
发行版支持Microsoft Store中提供的所有发行版Microsoft Store中提供的所有发行版 + 自定义发行版
内核更新与Windows更新绑定可以独立更新

2.2 安装一个Linux发行版

WSL 2 包括一个完整的 Linux 内核。这是 WSL 1 和 WSL 2 之间的主要区别之一。

  • WSL 1:它使用一个兼容性层来运行 Linux 二进制文件。这意味着它不包括一个真正的 Linux 内核,而是模拟 Linux 内核的行为。这使得 WSL 1 在某些情况下的性能不如 WSL 2,特别是在涉及文件系统操作时。

  • WSL 2:它使用一个真正的 Linux 内核,并运行在一个轻量级的虚拟机中。这提供了更好的性能和完整的 Linux 系统调用兼容性。微软为 WSL 2 提供了一个专门的 Linux 内核,但用户也可以自行更新或修改这个内核。

这个内核是作为一个单独的组件与 Windows 一起分发的,这意味着它可以独立于 Windows 更新进行更新。这为用户提供了更大的灵活性,允许他们更容易地获取内核的新版本和功能。


即使WSL 2包含了一个完整的Linux内核,用户仍然需要下载一个Linux发行版,原因如下:

  1. 用户空间与内核空间:Linux操作系统可以分为两个主要部分:内核和用户空间。内核负责与硬件交互、管理资源等,而用户空间包含了所有用户级应用程序和工具。WSL 2提供了Linux内核,但用户仍然需要一个Linux发行版来提供用户空间的组件。

  2. 发行版的选择:Linux有多个发行版,如Ubuntu、Debian、Fedora等,每个发行版都有其特定的软件包、配置和工具。用户可以根据自己的需求和喜好选择合适的发行版。

  3. 软件包管理:每个Linux发行版都有自己的软件包管理器,如Ubuntu的apt、Fedora的dnf等。这些工具允许用户轻松地安装、更新和管理软件。

  4. 环境配置:不同的Linux发行版可能会有不同的默认环境配置、服务和工具。下载特定的发行版允许用户获得他们期望的工作环境。

  5. 兼容性:某些应用程序或工具可能在特定的Linux发行版上运行得更好或只在特定的发行版上可用。

安装Linux发行版有多种方式,本文介绍最基本的2中。

2.21 从Microsoft Store 安装

直接去微软商店搜索你要安装的发行版即可,比如Ubuntu,然后选择你要的版本,下载。

下载完成后,双击,就会启动安装程序:期间需要你设置一个Linux用户

在这里插入图片描述

默认都是没有安装桌面的,启动方式有如下几种:

  • 运行(win r),wsl,回车(将启动默认的WSL发行版如果只安装了一个发行版,如Ubuntu,那么它就是默认的);
  • 运行,bash,回车(早期命令,不建议,可能会与Git Bash之类的冲突);
  • 运行,wt(Windows终端),新建一个Ubuntu的标签页。
    在这里插入图片描述

很多命令和命令行工作都是能正常使用的:
在这里插入图片描述

2.22 用命令安装

现在Powershell中运行wsl--help,你就可以看到wsl的命令,中文的,很好理解,我放在文章末尾了。

这里做个示例:

(1)获取可供安装的Linux发行版:wsl --list --online

以下是可安装的有效分发的列表。
使用 'wsl.exe --install <Distro>' 安装。NAME                                   FRIENDLY NAME
Ubuntu                                 Ubuntu
Debian                                 Debian GNU/Linux
kali-linux                             Kali Linux Rolling
Ubuntu-18.04                           Ubuntu 18.04 LTS
Ubuntu-20.04                           Ubuntu 20.04 LTS
Ubuntu-22.04                           Ubuntu 22.04 LTS
OracleLinux_7_9                        Oracle Linux 7.9
OracleLinux_8_7                        Oracle Linux 8.7
OracleLinux_9_1                        Oracle Linux 9.1
openSUSE-Leap-15.5                     openSUSE Leap 15.5
SUSE-Linux-Enterprise-Server-15-SP4    SUSE Linux Enterprise Server 15 SP4
SUSE-Linux-Enterprise-15-SP5           SUSE Linux Enterprise 15 SP5
openSUSE-Tumbleweed                    openSUSE Tumbleweed

(2)安装你需要的发行版: wsl --install Ubuntu-22.04

其他的就没什么好说的了。

2.23 拓展

  1. 查看wsl版本:wsl --version
    这个命令输出的是wsl的具体软件版本,并不是我们说的WSL1和WSL2,比如
    在这里插入图片描述

  2. 如果要查看使用的是WSL1还是WSL 2,可以使用:wsl --list --verbose
    在这里插入图片描述
    或者使用:wsl --status
    在这里插入图片描述
    或者在运行的Linux里面使用:uname -a查看
    在这里插入图片描述

  3. 设置WSL的默认版本:wsl --set-default-version 2
    这个命令将设置未来安装的所有Linux发行版的默认WSL版本。已经安装的发行版的版本不会受到影响
    如果要更改已安装的特定Linux发行版的版本,例:wsl --set-version Ubuntu 2

  4. 安装了多个Linux发行版,设置默认启动某一个发行版,示例:wsl --set-default Ubuntu

三、拓展

建议安装Linux-Windows双系统或者使用服务器。建议在电脑上运行各种软件的电脑版。

这种虚拟化技术,有时候可能并不稳定,可以用来娱乐、学习。

3.1 存储位置

在WSL中,Linux发行版的文件系统被存储为一个特殊的文件,通常称为“磁盘映像”文件。对于WSL 1和WSL 2,这些文件的存储位置略有不同:

  1. WSL 1

    • WSL 1的Linux发行版文件系统被存储在Windows文件系统中的一个隐藏文件夹中。通常,这个位置是:
      C:\Users\<YourUsername>\AppData\Local\Packages\<DistroPackageName>\LocalState\rootfs\
      
      其中<YourUsername>是Windows用户名,<DistroPackageName>是Linux发行版的包名,例如CanonicalGroupLimited.UbuntuonWindows对于Ubuntu。
  2. WSL 2

    • WSL 2使用了一个真正的Linux内核和一个轻量级的虚拟机。因此,它的文件系统被存储为一个VHDX文件,通常位于:
      C:\Users\<YourUsername>\AppData\Local\Packages\<DistroPackageName>\LocalState\ext4.vhdx
      

在这里插入图片描述

一般来说,这样安装的Ubuntu位于我们的C盘,包括内核、附加组件等等。我按照后,大概占用了20G左右(应该还包括其他内容)。


前面说过,WSL中的Linux要Windows是共享存储空间的,也就是说他会把Windows的各个磁盘、分区挂载到根目录下。当然了,他会拿出一部分存储空间为Linux系统服务,比如他会使用一个轻量性的虚拟机来运行Linux内核,这部分空间的文件系统是ext4(Linux主流文件系统)。

而原本的Windows的各个分区仍然保持他们原本的文件系统类型(比如NTFS),只不过采用“9P”协议,挂载到Linux根目录下。
在这里插入图片描述

3.2 虚拟化技术

Hyper-V是Microsoft提供的一种硬件虚拟化技术,允许用户在单个物理计算机上运行多个虚拟化的操作系统。它是Windows Server 2008中引入的,并且后来也被包括在某些Windows客户端版本中,如Windows 10和Windows 11的专业版和企业版。

以下是Hyper-V的一些关键特点和功能:

  1. 硬件虚拟化:Hyper-V使用硬件辅助虚拟化技术,这要求物理计算机的CPU支持虚拟化,并且这一功能已被启用。

  2. 隔离:每个虚拟机都在其自己的隔离环境中运行,这为每个虚拟机提供了操作系统级别的隔离。

  3. 灵活的资源管理:用户可以为每个虚拟机分配特定的CPU、内存、存储和网络资源。

  4. 虚拟硬盘:Hyper-V支持多种虚拟硬盘格式,如VHD和VHDX。

  5. 虚拟网络:Hyper-V允许创建和管理虚拟网络交换机,从而实现虚拟机之间以及虚拟机与外部网络之间的通信。

  6. 集成服务:这些是运行在虚拟机内部的特殊服务,用于提高性能和使虚拟机能够与Hyper-V宿主更好地交互。

  7. 快照和检查点:允许用户捕获虚拟机的当前状态,以便在将来需要时恢复到该状态。

  8. 与WSL 2的关系:虽然WSL 2使用了一个轻量级的虚拟机来运行Linux内核,但它不直接使用Hyper-V。然而,WSL 2和Hyper-V都依赖于相同的底层虚拟化技术。

  9. 兼容性:在启用Hyper-V后,某些其他的虚拟化解决方案可能无法正常工作,因为它们可能与Hyper-V冲突。

Hyper-V主要用于企业环境中的服务器虚拟化,但它也可以在桌面环境中用于开发、测试或学习目的。


虚拟机平台”(Virtual Machine Platform)是Windows的一个可选功能,它为Windows提供了一个轻量级的虚拟化解决方案,特别是为了支持WSL 2。

以下是“虚拟机平台”的一些关键点:

  1. WSL 2支持:与WSL 1不同,WSL 2使用了一个真正的Linux内核,并在轻量级的虚拟机上运行。为了支持这种虚拟化,Windows引入了“虚拟机平台”功能。

  2. 轻量级虚拟化:“虚拟机平台”提供了一个轻量级的虚拟化解决方案,与Hyper-V相比,它更为简单和高效。它专为运行WSL 2和其他轻量级虚拟化任务而设计。

  3. 与Hyper-V的关系:虽然“虚拟机平台”和Hyper-V都使用相同的底层虚拟化技术,但它们是为不同的用途设计的。可以同时启用“虚拟机平台”和Hyper-V。

  4. 启用/禁用:要使用WSL 2,需要启用“虚拟机平台”功能。这可以通过Windows功能设置或使用命令行工具完成。

  5. 硬件要求:“虚拟机平台”要求计算机支持硬件虚拟化,并且这一功能已被启用。

3.3 Windows 虚拟内存

同Linux的交换分区(文件)类似,Windows虚拟内存是一种内存管理功能,它使计算机可以使用硬盘空间作为RAM(随机存取存储器)。当计算机的物理RAM被使用完时,Windows会将部分数据移动到硬盘上的一个名为“页面文件”(或“交换空间”)的区域,从而释放RAM空间供其他程序使用

虚拟内存(页面文件)与Hyper-V和“虚拟机平台”是两个完全不同的概念,它们之间没有直接的依赖关系。
在这里插入图片描述
一般都是系统自动设置的,也可以自定义:
在这里插入图片描述

3.3 wsl 帮助文件

用法: wsl.exe [Argument] [Options...] [CommandLine]运行 Linux 二进制文件的参数:如果未提供命令行,wsl.exe 将启动默认 shell。--exec, -e <CommandLine>不使用默认 Linux shell 执行指定的命令。--shell-type <Type>使用提供的 shell 类型执行指定的命令。类型:standard使用默认 Linux shell 执行指定的命令。login使用默认 Linux shell 作为登录 shell 执行指定的命令。none不使用默认 Linux shell 执行指定的命令。--按原样传递命令行的剩余部分。选项:--cd <Directory>将指定的目录设置为当前工作目录。如果使用 ~,则将使用 Linux 用户的主路径。如果路径以/ 字符开头,它将解释为绝对 Linux 路径。否则,该值必须为绝对 Windows 路径。--distribution, -d <Distro>运行指定的分发。--user, -u <UserName>以指定的用户身份运行。--system启动 shell 进行系统分发用于管理适用于 Linux 的 Windows 子系统的参数:--help显示用法信息。--debug-shell打开 WSL2 调试 shell 以进行诊断。--event-viewer打开 Windows 事件查看器的应用视图。--install [Distro] [Options...]安装适用于 Linux 的 Windows 子系统分发。若要查看有效分发列表,请使用 'wsl.exe --list --online'。选项:--no-launch, -n安装后不要启动分发。--web-download从 Internet 而不是 Microsoft Store 下载分发。--no-distribution仅安装所需的可选组件,不安装分发。--mount <Disk>在所有 WSL 2 分发中附加并装载物理或虚拟磁盘。选项:--vhd指定 <Disk> 代表虚拟硬盘。--bare将磁盘附加到 WSL2 但不装载。--name <Name>为装入点使用自定义名称装载磁盘。--type <Type>装载磁盘时使用的文件系统,如果未指定则默认为 ext4。--options <Options>其他装载选项。--partition <Index>要装载的分区索引,如果未指定则默认为整个磁盘。--release-notes打开 Web 浏览器查看 WSL 发行说明页面。--set-default-version <Version>更改新分发的默认安装版本。--shutdown立即终止所有正在运行的分发和 WSL 2轻型虚拟机。--status显示适用于 Linux 的 Windows 子系统的状态。--unmount [Disk]从所有 WSL2 分发中卸载并分离一个磁盘。如果未使用参数调用,则卸载并分离所有磁盘。--update更新适用于 Linux 的 Windows 子系统程序包。选项:--web-download从 Internet 而不是 Microsoft Store 下载更新。--pre-release如果可用,则下载预发布版本。表示使用 --web-download。--version, -v显示版本信息。用于管理适用于 Linux 的 Windows 子系统中的分发的参数:--export <Distro> <FileName> [Options]将分发导出为 tar 文件。对于标准输出,文件名可以是 "-"。选项:--vhd指定应导出为 .vhdx 文件的分发。--import <Distro> <InstallLocation> <FileName> [Options]将指定的 tar 导入为新分发。对于标准输入,文件名可以是 "-"。选项:--version <Version>指定要为新分发使用的版本。--vhd指定提供的文件为 .vhdx 文件,而不是 tar 文件。此操作将在指定的安装位置生成一个 .vhdx 文件的副本。--import-in-place <Distro> <FileName>将指定的 .vhdx 导入为一个新分发。此虚拟硬盘必须使用 ext4 文件系统类型格式化。--list, -l [Options]列出分发。选项:--all列出所有分发,包括目前正在安装或卸载的分发。--running仅列出目前正在运行的分发。--quiet, -q仅显示分发名称。--verbose, -v显示所有分发的相关详细信息。--online, -o使用 'wsl.exe --install' 显示可以安装的可用分发列表。--set-default, -s <Distro>将分发设置为默认分发。--set-version <Distro> <Version>更改指定分发的版本。--terminate, -t <Distro>终止指定分发。--unregister <Distro>注销分发并删除根文件系统。


~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/67264.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

02:STM32--EXTI外部中断

目录 一:中断 1:简历 2:AFIO 3:EXTI ​编辑 4:NVIC基本结构 5:使用步骤 二:中断的应用 A:对外式红外传感计数器 1:连接图​编辑 2:函数介绍 3:硬件介绍 4:计数代码 B;旋转编码计数器 1:连接图 2:硬件介绍 3:旋转编码器代码: 一:中断 1:简历 中断&#xff1a;在主程…

三、性能测试场景设计

性能测试场景设计 一、引言&#xff1a;如果公司要求你去做性能测试&#xff0c;遇到这些场景&#xff0c;我们要如何设计&#xff1f;二、6种常见设计方法1、普通性能场景设计2、负载测试性能场景 一、引言&#xff1a;如果公司要求你去做性能测试&#xff0c;遇到这些场景&am…

用 oneAPI 实现 AI 欺诈检测:一款智能图像识别工具

简介 虚假图像和视频日益成为社交媒体、新闻报道以及在线内容中的一大隐患。在这个信息爆炸的时代&#xff0c;如何准确地识别和应对这些虚假内容已经成为一个迫切的问题。为了帮助用户更好地辨别虚假内容&#xff0c;我开发了一款基于 oneAPI、TensorFlow 和 Neural Compress…

生活中那些六 “有” 的人

1、有承诺 一些事情开始的时候总会有些协议与约定&#xff0c;我们称其为承诺&#xff1b;我们必须遵守承诺&#xff0c;即使是约会也要遵守&#xff0c;也不能迟到&#xff1b;迟到这件事不但会妨碍我们所有人&#xff0c;还意味着迟到者不尊重大家的时间。这种约定从某种意义…

python3装饰器理解与实战

前言 装饰器本质上是一个Python函数&#xff0c;它可以让其他函数在不需要做任务代码变动的前提下增加额外功能&#xff0c;装饰器的返回值也是一个函数对象。它经常用于有切面需求的场景&#xff0c;比如&#xff1a;插入日志、性能测试、事务处理、缓存、权限校验等场景。装…

CVPR 2023 | 用户可控的条件图像到视频生成方法(基于Diffusion)

注1:本文系“计算机视觉/三维重建论文速递”系列之一&#xff0c;致力于简洁清晰完整地介绍、解读计算机视觉&#xff0c;特别是三维重建领域最新的顶会/顶刊论文(包括但不限于 Nature/Science及其子刊; CVPR, ICCV, ECCV, NeurIPS, ICLR, ICML, TPAMI, IJCV 等)。 本次介绍的论…

NGINX源码安装

文章目录 NGINX源码安装安装依赖包获取源码NGINX官方网站各个目录的用途 编译安装安装结束后的文件设置为服务 NGINX源码安装 安装依赖包 root执行 yum -y install gcc gcc-c make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel这些包是用于开发和构建软件…

R语言生存分析算法的简单组合

library(survival) library(randomForestSRC)# 生成模拟数据 set.seed(123) n <- 200 time <- rexp(n, rate 0.1) status <- rbinom(n, size 1, prob 0.7) var1 <- rnorm(n) var2 <- rnorm(n) var3 <- rnorm(n) data1 <- data.frame(time time, statu…

C语言案例 分数列求和-11

题目&#xff1a;有一分数列&#xff1a;2 / 1,3 / 2,5 / 3,8 / 5,13 / 8,21 / 13 …求出这个数列的前20项之和。 程序分析 这是一个典型的分数列数学逻辑题&#xff0c;考究这类题目是需要从已知的条件中找到它们的分布规律 我们把前6荐的分子与分母分别排列出来&#xff0c;…

ClickHouse(十八):Clickhouse Integration系列表引擎

进入正文前&#xff0c;感谢宝子们订阅专题、点赞、评论、收藏&#xff01;关注IT贫道&#xff0c;获取高质量博客内容&#xff01; &#x1f3e1;个人主页&#xff1a;含各种IT体系技术&#xff0c;IT贫道_Apache Doris,大数据OLAP体系技术栈,Kerberos安全认证-CSDN博客 &…

谷粒商城第十一天-品牌管理中关联分类

目录 一、总述 二、前端部分 1. 调整查询调用 2. 关联分类 三、后端部分 四、总结 一、总述 之前是在商品的分类管理中直接使用的若依的逆向代码 有下面的几个问题&#xff1a; 1. 表格上面的参数填写之后&#xff0c;都是按照完全匹配进行搜索&#xff0c;没有模糊匹配…

Datawhale Django后端开发入门Task01 Vscode配置环境

首先呢放一张运行成功的截图纪念一下&#xff0c;感谢众多小伙伴的帮助呀&#xff0c;之前没有配置这方面的经验 &#xff0c;但还是一步一步配置成功了&#xff0c;所以在此以一个纯小白的经验分享如何配置成功。 1.选择要建立项目的文件夹&#xff0c;打开文件找到目标文件夹…