【Linux】WSL:Win运行Linux

打印 上一主题 下一主题

主题 1047|帖子 1047|积分 3141

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
WSL2(Windows Subsystem for Linux 2) 是 Microsoft 开发的技能,可在 Windows 系统上运行完整的 Linux 发行版环境。以下是详细的设置教程。
  安装与设置

启用 WSL 功能


  • 打开“开始”菜单,搜索 PowerShell,以 管理员身份运行
  • 在 PowerShell 中输入以下下令并回车:
    1. wsl
    2. --install
    复制代码
    该下令会自动启用 WSL 并安装 Ubuntu 作为默认 Linux 发行版。
  • 安装完成后,系统会提示重启盘算机。请重启。
设置 Ubuntu


  • 首次启动:启动 WSL 时系统会提示您创建一个默认的 UNIX 用户账户。
  • 创建账户:

    • 输入一个新的用户名(可自定义)。
    • 为该用户设置密码。

  • 更新系统: 在 Linux 终端中运行以下下令更新软件包:
    1. sudo apt update && sudo apt upgrade -y
    复制代码
下面是简短的 Windows Subsystem for Linux (WSL) 发行版管理操纵指南:
启动 WSL 发行版


  • 启动下令行:打开 PowerShell下令提示符 (cmd)。
  • 启动 WSL:输入以下下令:
    1. wsl
    复制代码
  • 启动特定发行版:输入:
    1. wsl
    2. -d <发行版名称>
    复制代码
    例如,要启动 Ubuntu:
    1. wsl
    2. -d Ubuntu
    复制代码
下载 WSL 发行版


  • 打开 Microsoft Store:在搜索栏中输入 “Microsoft Store” 并打开。
  • 搜索 WSL 发行版:在商店中搜索你想要的发行版(如 Ubuntu、Debian 等)。
  • 安装:点击“获取”或“安装”按钮,等候下载和安装完成。
移除 WSL 发行版


  • 打开 PowerShell:以管理员身份运行 PowerShell。
  • 列出已安装的发行版
    1. wsl
    2. --list --verbose
    复制代码
  • 卸载指定发行版
    1. wsl
    2. --unregister <发行版名称>
    复制代码
    例如,卸载 Ubuntu:
    1. wsl
    2. --unregister Ubuntu
    复制代码
其他常用下令



  • 设置默认发行版:
    1. wsl
    2. --setdefault <发行版名称>  
    复制代码
  • 更新 WSL
    1. wsl
    2. --update
    复制代码
  • 检查 WSL 版本
    1. wsl
    2. --list --verbose
    复制代码
开机自启并后台运行

设置任务计划程序


  • 打开任务计划程序:

    • 按 Win + S,搜索 任务计划程序 并打开。

  • 创建任务:

    • 点击右侧 创建任务
    • 通例 选项卡中:

      • 名称:WSL_Background_Start(可自定义)。
      • 勾选 使用最高权限运行
      • 设置为:选择当前 Windows 版本。


  • 设置触发器:

    • 转到 触发器 选项卡,点击 新建
    • 开始任务 下拉框中选择 系统启动时
    • 点击 确定

  • 设置操纵:

    • 转到 操纵 选项卡,点击 新建
    • 启动程序 中输入:wsl

      .exe
    • (可选)添加参数,例如运行指定的下令:
      1. -d Ubuntu --exec /bin/bash
      复制代码

  • 生存任务:

    • 点击 确定 完成任务创建。

验证任务启动


  • 重启盘算机。
  • 登录后运行以下下令确认 WSL 是否已启动:
    1. wsl
    2. --list --running
    复制代码
与主机共享 IP

默认环境下,Windows 防火墙会允许来自本土地算机(即从 Windows 主机到 WSL2,大概反向通信)的流量。这意味着,即使没有进行端口转发或特殊设置,主机与 WSL2 之间的内网通信也是允许的。在启用 networkingMode=mirrored 的环境下,WSL2 会和主机共享雷同的网络设置。这样,WSL2 和主机之间的网络通信变得更为直接,由于它们使用雷同的物理网络适配器。


  • 在这种模式下,WSL2 会通过主机的物理网络接口与其他设备通信,而无需单独的虚拟交换机或端口转发。
  • 主机和 WSL2 共享 IP 地点段,可以通过同一 IP 地点进行直接通信。
编辑主机上的 .wsl

config 设置文件



  • 打开文件资源管理器

    • 按 Win + E 打开文件资源管理器。

  • 进入 WSL 设置目次

    • 导航到主机的 WSL 设置文件目次:
      1. C:\Users\<YourUserName>\.wsl
      2. config
      复制代码
    • 如果 .wsl

      config 文件不存在,可以手动创建该文件。

  • 编辑 .wsl

    config 文件


    • 使用文本编辑器(如 Notepad)打开 .wsl

      config 文件。
    • 如果该文件不存在,您可以新建一个。

  • 添加或修改设置: 在 .wsl

    config 文件中,添加以下设置来启用镜像模式的网络设置:
    1. [wsl
    2. 2]networkingMode=mirrored
    复制代码

    • networkingMode=mirrored:这个设置将会使 WSL2 的网络设置与主机的网络设置进行镜像,即 WSL2 会使用主机的网络接口设置。

  • 生存并关闭文件
重启 WSL2


  • 关闭所有正在运行的 WSL2 实例

    • 打开 PowerShell(以管理员身份)并运行以下下令:
      1. wsl
      2. --shutdown
      复制代码

  • 重新启动 WSL2

    • 在 WSL2 中重新启动,大概通过 Windows Terminal 启动:
      1. wsl
      复制代码

验证网络设置


  • 打开 WSL2 终端,执行以下下令来验证网络设置:
    1. ip addr
    复制代码
  • 检查输出,确认 WSL2 使用了主机的网络接口,并且 eth0 或其他网络接口的设置已镜像主机的 IP 地点。
运行 WSL2 中的服务


  • 启动一个 HTTP 服务(以 8080 端口为例):
    1. python3 -m http.server 8080 --bind 0.0.0.0
    复制代码
    这样,WSL2 中的服务会在 8080 端口上监听,并且可以接受来自任何设备的毗连。
设置 Windows 防火墙

为了允许局域网中的其他设备访问 WSL2 中的服务,您需要确保 Windows 防火墙允许外部设备访问相关端口。例如,允许访问 8080 端口:

  • 打开 PowerShell 以管理员身份运行:
    1. New-NetFirewallRule -DisplayName "Allow WSL2 HTTP 8080" -Direction Inbound -Protocol TCP -LocalPort 8080 -Action Allow
    复制代码
    这会允许来自局域网的设备访问 Windows 主机的 8080 端口,进而访问 WSL2 中的服务。
查找主机的 IP 地点

由于 WSL2 和主机共享雷同的网络接口,您可以通过主机的 IP 地点访问 WSL2 中的服务。要获取 Windows 主机的 IP 地点,可以执行以下步骤:

  • 打开 PowerShell 或下令提示符,运行以下下令:
    1. ipconfig
    复制代码
  • 查找适配器列表中的 IPv4 地点,这是您的主机 IP 地点。通常,它位于 “以太网适配器” 或 “无线局域网适配器” 部门。
从局域网设备访问服务

在局域网中的其他设备上,使用 Windows 主机的 IP 地点和袒露的端口(例如 8080)来访问 WSL2 中的服务。例如:
  1. http://<Windows主机的IP>:8080
复制代码
这将使您可以通过局域网中的其他设备访问 WSL2 中运行的 Web 服务。
C++ 开发环境摆设


  • 更新系统包:
    1. sudo apt update && sudo apt upgrade -y
    复制代码
  • 安装 gcc、g++ 和 make:
    1. sudo apt install -y build-essential
    复制代码
  • 安装调试工具 gdb 和代码格式化工具 clang-format(可选):
    1. sudo apt install -y gdb clang-format
    复制代码
Python 开发环境摆设


  • 下载 Miniconda:
    1. wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh
    复制代码
  • 安装 Miniconda:
    1. bash ~/miniconda.sh
    复制代码

    • 选择默认路径(通常是 ~/miniconda3)。

  • 激活 Miniconda 环境:
    1. source ~/miniconda3/bin/activate
    复制代码
  • 初始化 Shell 支持:
    1. conda init
    复制代码
  • 创建和管理虚拟环境:
    1. conda create -n dev_env python=3.9 -y
    2. conda activate dev_env
    复制代码
  • 安装常用库:
    1. conda install numpy pandas matplotlib
    复制代码
Docker 开发环境摆设


  • 更新包并安装依赖:
    1. sudo apt-get update
    2. sudo apt-get install ca-certificates curl
    复制代码
  • 添加 Docker 的 GPG 密钥和官方源:
    1. sudo install -m 0755 -d /etc/apt/keyrings
    2. sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
    3. sudo chmod a+r /etc/apt/keyrings/docker.asc
    4. echo \
    5.   "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
    6.   $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
    7.   sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    8. sudo apt-get update
    复制代码
  • 安装 Docker:
    1. sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    复制代码
  • 设置非 root 用户使用 Docker:
    1. sudo groupadd docker
    2. sudo usermod -aG docker $USER
    3. newgrp docker
    复制代码
  • 验证 Docker 安装:
    1. docker run hello-world
    复制代码
NodeJS 开发环境摆设


  • 安装 NVM ,并重新加载 shell 设置文件
    1. curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
    2. source ~/.bashrc
    复制代码
  • 验证 NVM 安装
    1. command -v nvm
    复制代码
  • 安装 Node.js LTS 版本
    1. nvm install --lts
    复制代码
  • 使用安装的 Node.js 版本
    1. node -v
    2. npm -v
    复制代码
  • 设置默认版本
    1. nvm use --lts
    2. nvm alias default lts/*
    复制代码

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

反转基因福娃

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表