Windows Subsystem for Linux(WSL)是微软推出的一种兼容层,用于在 Windows 10 及更高版本上运行 Linux 二进制可执行文件(ELF 格式)。WSL 提供了一个运行完整 Linux 用户空间的环境,而无需启动虚拟机或双启动系统。下面是 WSL 的详细介绍及其优缺点。
WSL 允许用户在 Windows 上运行 GNU/Linux 环境,包括大多数命令行工具、实用程序和应用程序。WSL 包括两种版本:WSL 1 和 WSL 2。
| 特性 | WSL 1 | WSL 2 |
|---|---|---|
| 内核实现 | 适配的 Linux 兼容内核接口 | 真正的 Linux 内核 |
| 文件系统性能 | Windows 和 WSL 文件系统共享性能 | 更快的文件系统性能 |
| 系统调用兼容性 | 部分 Linux 系统调用兼容 | 完全的 Linux 系统调用兼容 |
| 启动时间 | 更快 | 略慢于 WSL 1 |
| 内存占用 | 更少 | 由于轻量级虚拟机,略多 |
| Docker 支持 | 需要额外配置 | 原生支持 |
在 Windows Subsystem for Linux (WSL)上安装和配置 Linux 系统可以帮助你在 Windows 环境中使用 Linux 工具和开发环境。默认是安装在了 C 盘。以下是详细的步骤,包括如何将 WSL 安装在 D 盘并安装 Ubuntu 等系统:
打开 PowerShell(以管理员身份运行):
启用 WSL:
wsl --install 这个命令会自动启用 WSL 及相关功能,并下载并安装最新的 Linux 内核。如果你使用的是 Windows 10,可能需要手动启用 WSL 功能。
如果你需要手动启用 WSL 功能(仅 Windows 10):
在 PowerShell 中执行以下命令:
dism.exe /online /enable-feature /featurename: Microsoft-Windows-Subsystem-Linux /all /norestart 启用虚拟机平台功能(WSL 2 需要):
dism.exe /online /enable-feature /featurename: VirtualMachinePlatform /all /norestart 重启计算机:
下载并安装最新的 WSL 2 Linux 内核更新包:
设置 WSL 2 为默认版本:
打开 PowerShell(以管理员身份运行),输入以下命令:
wsl --set-default-version 2 列出可用的发行版:
wsl --list --online 安装选择的发行版:
假设你选择安装 Ubuntu:
wsl --install -d Ubuntu 导出现有发行版:
假设你已经安装了 Ubuntu,可以使用以下命令导出发行版:
wsl --export Ubuntu D:\WSL\Ubuntu.tar 卸载现有发行版:
wsl --unregister Ubuntu 创建新的发行版目录:
D:\WSL\Ubuntu。导入发行版到 D 盘:
wsl --import Ubuntu D:\WSL\Ubuntu D:\WSL\Ubuntu.tar 启动 Linux 发行版:
进行初始设置:
更新和升级系统:
在 Linux 终端中,运行以下命令更新系统:
sudo apt update sudo apt upgrade 设置默认用户:
可以设置一个默认用户,以便每次启动 WSL 时不需要重新登录:
wsl --set-default-user 修改 .wslconfig 文件:
可以创建或编辑位于用户主目录下的
.wslconfig 文件来调整 WSL 的配置,如内存限制、处理器数量等:
文件路径:C:\Users\
示例内容:
[wsl2] memory=4GB processors=2 以上步骤涵盖了从安装 WSL 到将其配置在 D 盘的整个过程。确保按照步骤执行,特别是在移动发行版时,要先导出和卸载再重新导入,以避免数据丢失。
使用 WSL 之后提高了 qps 的项目,纯 c 语言写的 kv 存储引擎,可以点击该文字跳转到 github 上:kv存储引擎项目链接
项目开源,介绍详细,记得给颗星星 star 哦~
在本地电脑安装了WSL(Windows Subsystem for Linux)之后,可以通过多种方法将项目代码导入到WSL环境中。以下是几种常用的方法:
WSL可以直接访问Windows文件系统,您可以将项目代码保存在Windows文件系统中的任意位置,然后从WSL中访问。
将项目代码放在Windows文件系统中: 将项目代码放在Windows系统的任意文件夹中,例如C:\Projects\MyProject。
从WSL访问该文件夹: 在WSL中,使用/mnt/c来访问C盘。例如,打开WSL终端并导航到项目文件夹:
cd /mnt/c/Projects/MyProject VS Code提供了一个名为Remote - WSL的扩展,可以在WSL环境中轻松编辑和管理项目代码。
安装VS Code和Remote - WSL扩展: 从VS Code官网下载并安装VS Code,然后在VS Code中安装Remote - WSL扩展。
在WSL中打开项目:
打开WSL终端并导航到项目文件夹:
cd /path/to/your/project 在项目文件夹中运行以下命令以启动VS Code并打开该项目:
code . 如果您的项目托管在Git仓库中,可以使用Git将项目克隆到WSL环境中。
在WSL中安装Git(如果尚未安装):
sudo apt-get update sudo apt-get install git 克隆Git仓库: 在WSL终端中导航到目标目录并克隆项目代码:
cd /path/to/your/directory git clone https://github.com/yourusername/yourproject.git 如果您的项目代码在远程服务器上,可以使用SCP或SFTP将文件传输到WSL环境中。
在WSL中使用SCP传输文件:
scp username@remotehost:/path/to/remote/project /path/to/local/directory 在WSL中使用SFTP传输文件:
sftp username@remotehost sftp> get /path/to/remote/project /path/to/local/directory WSL和Windows之间可以使用共享文件夹来传输文件。
在Windows中创建一个共享文件夹: 将项目代码放在一个文件夹中,例如C:\Projects\MyProject。
在WSL中创建一个符号链接: 在WSL终端中创建一个指向Windows文件夹的符号链接:
ln -s /mnt/c/Projects/MyProject /path/to/your/symlink 通过上述方法,您可以将项目代码轻松导入到WSL环境中,从而在Linux环境中进行开发和测试。