您的位置:

WSL 命令详解

Windows Subsystem for Linux(WSL)是由微软开发的一项技术,它允许在 Windows 上运行原生的 Linux 二进制文件。WSL 拥有一系列的命令,本文将以这些命令为中心,从不同的方面详细解析 WSL。

一、WSL 简介

WSL 是一项由微软开发的技术,其目的是允许用户在 Windows 上运行原生的 Linux 二进制文件。这意味着用户可以在 Windows 上开发和运行命令行应用程序,而无需在虚拟机或双系统之间来回切换。

WSL 主要包含两个组件:WSL1 和 WSL2。 WS1 是第一代 WSL,它通过对核心系统调用进行转换来实现 Linux 应用程序的运行。WSL2 是第二代 WSL,它使用了虚拟化技术,因此能够提供更好的性能和功能。无论是哪个版本,WSL 都提供了一系列的命令来管理和配置 Linux 环境。

二、WSL 命令

下面是常见的 WSL 命令及其用途。

1. wsl

wsl [参数] [选项] [命令] 

该命令可用于直接在 WSL 中运行 Linux 应用程序。若要在 WSL 中安装一个新的 Linux 发行版,可以使用如下命令:

wsl --install -d Ubuntu

此命令将安装 Ubuntu,并将其设置为默认发行版。

2. wslconfig

wslconfig [参数]

该命令用于管理 WSL 配置选项。它可用于将某个 Linux 发行版设置为默认,指定应在启动 WSL 时自动启动的发行版,查看已安装的发行版等。

例如,要将 Ubuntu 设置为默认发行版:

wslconfig /setdefault Ubuntu

3. export

export [选项] [变量]

该命令用于将指定变量导入到当前 shell 环境中。可以使用 export 命令设置环境变量,以便在后续的应用程序中使用。

例如,要将 /home/user/myapp 目录添加到 PATH 环境变量中:

export PATH=$PATH:/home/user/myapp

4. sudo

sudo [选项] [命令]

该命令允许普通用户以超级用户身份执行命令。需要注意的是,虽然 WSL 中存在 root 账户,但默认情况下它是未启用的。

例如,要以超级用户身份运行 apt-get update 命令:

sudo apt-get update

三、WSL 文件系统访问

WSL 提供了一种简便的方式,使 Windows 用户可以访问 Linux 文件系统中的文件。通过 Windows 中的“\\wsl$”共享目录,用户可以轻松访问他们在 Linux 中安装的应用程序文件。下面介绍如何在 Windows 中使用共享目录。

1.创建共享目录

要创建共享目录,需要在 Linux 终端会话中运行以下命令。

sudo mkdir /mnt/wsl

2.启用WSL文件系统功能

WSL 文件系统访问功能需要开启才能在 Windows 上使用,可以通过以下步骤完成。

① 以管理员身份运行 PowerShell。

② 运行以下命令:

icacls 'C:\Program Files\WindowsApps' /grant 'Users:(RX)'

③ 在 Windows 中启用注销重新登录。

3.访问文件和目录

通过 Windows 上的“\\wsl$”共享目录,可以访问 WSL 中的文件。用户可以通过以下方式进入共享目录。

① 打开 Windows 资源管理器。

② 在地址栏中键入“\\wsl$\”即可访问 WSL 中的文件和目录。

四、WSL 和 Docker 的结合

WSL 和 Docker 的结合使得 Docker 可以直接在 Windows 上运行。下面介绍如何安装和配置 Docker 及其在 WSL 中的使用。

1.安装 Docker

可以在 Docker 官网下载并安装 Docker。

① 下载并安装 Docker。

② 确认 Docker 是否正确安装:在 Windows 终端中,运行命令 docker version。

2.将 WSL 与 Docker 配置到一起

可以在 WSL 终端会话中运行以下命令进行配置。

sudo tee /etc/wsl.conf << EOF > /dev/null
[automount]
root = /
options = "metadata"
EOF

3.设置 Docker 数据目录

将 Docker 数据目录安装在 WSL 中有助于它能够处理 Linux 操作系统,这可以提供更好的性能。

① 在 WSL 中,运行如下命令创建 Docker 目录:

mkdir /home/<user>/docker-root
sudo ln -sfn /home/<user>/docker-root /var/lib/docker

② 启动 Docker。

sudo service docker start

4.使用 Docker

如果一切准备就绪,现在可以在 WSL 中运行 Docker。

① 进入 WSL 终端。

② 运行以下命令以在 Docker 中运行 Ubuntu 容器。

docker run -it ubuntu bash

五、总结

本文以 WSL 命令为中心,介绍了 WSL 的基本概念、WSL 命令的用途、WSL 文件系统访问以及 WSL 和 Docker 的结合。通过本文的介绍,读者可以更好地理解 WSL 并正确地在 Windows 上使用它。