适用于Windows的Linux子系统:WSL

在一台装了Windows系统的电脑上,如何使用Linux系统?通常都是安装虚拟机或双系统。但虚拟机开销过大,双系统又需要重启电脑

为什么需要Linux系统?Linux系统更纯净,适合开发和测试

所以,Windows系统推出了自己的Linux子系统:WSL。什么是WSL?

以下内容来源于百度百科

Windows Subsystem for Linux(简称WSL)是一个在Windows 10\11上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubuntu、Debian等映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。

以下内容来源于微软官方介绍,链接:https://learn.microsoft.com/zh-cn/windows/wsl/

适用于 Linux 的 Windows 子系统 (WSL) 可让开发人员直接在 Windows 上按原样运行 GNU/Linux 环境(包括大多数命令行工具、实用工具和应用程序),且不会产生传统虚拟机或双启动设置开销。

WSL有两个版本:WSL1和WSL2。默认安装WSL2

适用于Windows的Linux子系统:WSL_第1张图片

1、命令

官方链接:https://learn.microsoft.com/zh-cn/windows/wsl/basic-commands?source=recommendations

1.1、列出可用的 Linux 发行版

wsl --list --online

查看可通过在线商店获得的 Linux 发行版列表。此命令也可输入为:wsl -l -o

1.2、列出已安装的 Linux 发行版

wsl --list --verbose      

查看安装在 Windows 计算机上的 Linux 发行版列表。此命令也可输入为:wsl -l -v

1.3、进入Linux子系统

wsl

可在PowerShell或命令提示符窗口输入此命令,进入Linux子系统

CMD能办的事,PowerShell基本都就能办,但PowerShell能办的事,CMD遥不可及

1.4、进入Linux的主目录

wsl ~

也可以wsl先进入Linux系统,然后使用命令cd ~

1.5、检查 WSL 版本

wsl --version   

1.6、Help 命令

wsl --help

1.7、关闭

wsl --shutdown

立即终止所有正在运行的发行版和 WSL 2 轻量级实用工具虚拟机

1.8、Terminate

wsl --terminate 

若要终止指定的发行版或阻止其运行,请将 替换为目标发行版的名称

1.9、导入和导出发行版

wsl --export  
wsl --import   

将已安装的Linux发行版导出为tar文件,或者将tar文件导入为新的发行版。这两条命令常用的场景为:当某个项目需要根据使用说明手册的步骤在Windwos系统安装Linux子系统,并需要在Linux子系统中安装其他软件或配置功能时(比如linux adb),如果其他人已经在自己的电脑中安装好了一切。那么可以让他把已安装的发行版导出为tar文件,我只需要把这个tar文件导入即可,实现一键copy对方的系统和环境

1.10、注销或卸载 Linux 发行版

wsl --unregister 

如果将 替换为目标 Linux 发行版的名称,则将从 WSL 取消注册该发行版,以便可以重新安装或清理它。 警告:取消注册后,与该分发版关联的所有数据、设置和软件将永久丢失

1.11、 安装

wsl --install

安装 WSL 和 Linux 的默认 Ubuntu 发行版。还可以使用此命令通过运行 wsl --install 来安装其他 Linux 发行版。 若要获取发行版名称的有效列表,请运行 wsl --list --online

1.12、设置默认 Linux 发行版

wsl --set-default 

若要设置 WSL 命令将用于运行的默认 Linux 发行版,请将 替换为你首选的 Linux 发行版的名称

1.13、更新 WSL

wsl --update

1.14、挂载磁盘或设备

wsl --mount 

通过将 替换为物理磁盘所在的目录\文件路径,在所有 WSL2 发行版中附加和挂载该磁盘

1.15、取消挂载磁盘

wsl --unmount 

2、安装

2.1、确认Windows系统

安装前需要确定Windows系统版本是否满足?

WSL 2 仅在 Windows 11 或 Windows 10 版本 1903、内部版本 18362 或更高版本中可用。通过按 Windows 徽标键 + R,检查你的 Windows 版本,然后键入 winver,选择“确定”。(或者在 Windows 命令提示符下输入 ver 命令)

2.2、自动安装wsl

在管理员模式下打开 PowerShell 或 Windows 命令提示符,方法是右键单击并选择“以管理员身份运行”,输入 wsl --install 命令,然后重启计算机

wsl --install

上述命令只有在未完全安装wsl时才有效,如果你已经安装wsl,想安装其他版本的Linux发行版,可以使用命令wsl --list --online查看可用的发行版,然后运行wsl --install -d 以安装指定的发行版

2.3、旧版WSL的手动安装步骤

为简单起见,通常建议使用 wsl --install 安装适用于 Linux 的 Windows 子系统,但如果运行的是旧版 Windows,则可能不支持这种方式。就必须使用手动安装!

参考链接:https://learn.microsoft.com/zh-cn/windows/wsl/install-manual

2.3.1、启用适用于 Linux 的 Windows 子系统

需要先启用“适用于 Linux 的 Windows 子系统”可选功能,然后才能在 Windows 上安装 Linux 分发。

有两种方式启用此选项:

  1. 手动

适用于Windows的Linux子系统:WSL_第2张图片

  1. 自动

以管理员身份打开 PowerShell(“开始”菜单 >“PowerShell” >单击右键 >“以管理员身份运行”),然后输入以下命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

启用上面的功能后,重启电脑Windows系统

2.3.2、启用虚拟机功能

安装 WSL 2 之前,必须启用“虚拟机平台”可选功能。 计算机需要虚拟化功能才能使用此功能。

以管理员身份打开 PowerShell 并运行:

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

重新启动计算机,以完成 WSL 安装并更新到 WSL 2。

2.3.3、下载 Linux 内核更新包

  1. 下载最新包:

软件下载链接:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

如果使用的是 ARM64 计算机,请下载 ARM64 包:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_arm64.msi。 如果不确定自己计算机的类型,请打开命令提示符或 PowerShell,并输入:systeminfo | find “System Type”。 Caveat: 在非英文版 Windows 上,你可能必须修改搜索文本,对“System Type”字符串进行翻译。 你可能还需要对引号进行转义来用于 find 命令。 例如,在德语版中使用 systeminfo | find ‘“Systemtyp”’。

  1. 运行上一步中下载的更新包。 (双击以运行 - 系统将提示你提供提升的权限,选择“是”以批准此安装。)

2.3.4、将 WSL 2 设置为默认版本

打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本:

wsl --set-default-version 2   

2.3.5、安装所选的 Linux 分发

  1. 打开 Microsoft Store:https://aka.ms/wslstore,并选择你偏好的 Linux 分发版

适用于Windows的Linux子系统:WSL_第3张图片

单击以下链接会打开每个分发版的 Microsoft Store 页面:

Ubuntu 20.04 LTS:https://www.microsoft.com/store/apps/9n6svws3rx71
Ubuntu 22.04 LTS:https://www.microsoft.com/store/apps/9PN20MSR04DW
Kali Linux:https://www.microsoft.com/store/apps/9PKR34TNCV07
Debian GNU/Linux:https://www.microsoft.com/store/apps/9MSVKQC78PK6

  1. 在分发版的页面中,选择“获取”

适用于Windows的Linux子系统:WSL_第4张图片

首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。

然后,需要为新的 Linux 分发版创建用户帐户和密码:

适用于Windows的Linux子系统:WSL_第5张图片

这样就安装成功了,在PowerShell或cmd下输入wsl就可以切换到Linux子系统。有时会长时间无法进入,这可能是由于电脑内存空间不足造成,重启或等待

如果想退出wsl,只需要执行exit即可

3、WSL中使用adb

参考文章:https://blog.csdn.net/YuZhuQue/article/details/105773966(使用的是windows系统的adb)

  1. 找到你的adb 安装路径,我的是/mnt/c/tool/android-develpe-SDK/platform-tools/adb.exe,这里的 /mnt/c 对应的是C盘

  2. vi ~/.bashrc 添加如下

# Android Debug Bridge
export PATH=$PATH:/mnt/c/tool/android-develpe-SDK/platform-tools/
alias adb='/mnt/c/tool/android-develpe-SDK/platform-tools/adb.exe'

  1. 重新打开终端或者执行 source ~/.bashrc

  2. 如果adb识别不到设备,可以使用adb kill-server杀一下server先


你可能感兴趣的:(自动化测试,WSL,Linux)