WSL安装#
WSL(Windows Subsystem for Linux), 适用于 Linux 的 Windows 子系统。
它可以让你在 Windows 系统中直接运行 Linux 环境,而不需要双系统或虚拟机。
这意味着你可以同时享受 Windows 的便利和 Linux 的开发环境。
1. 启用 Windows 功能#
用windows搜索搜索启用或关闭 Windows 功能

2.安装发行版#
打开powershell,执行下面命令更新WSL内核
wsl --update
设置使用WSL2
wsl --set-default-version 2
查看可用发行版
wsl --list --online

Linux有很多种发行版,因为任何人都可以自己编译内核,打包自己的镜像.Ubuntu 是最流行的 Linux 发行版之一,界面友好、稳定、生态完善,对小白友好。推荐使用ubuntu,选择任一ubuntu版本即可
wsl --install < 自己选择的发行版的 NAME>
# 例如
wsl --install Ubuntu-24.04
安装完成后根据引导创建用户设置密码(需要注意的是输入密码时看不见已经输入的密码是正常的,不要认为没有输入)
默认安装的发行版位置在 C:\Users\ 你的用户名 \AppData\Local\wsl 如果后期安装的东西多了会很占空间,所以最好做个迁移,不要占用C盘空间
输入 exit 退回 powershell,输入以下命令导出自己的发行版`
wsl --export < 发行版名称 > < 导出路径 >
# 例如
wsl --export Ubuntu-24.04 D:\WSL\Ubuntu-24.04\Ubuntu-24.04.tar
然后注销原发行版,同时会删除默认位置的发行版
wsl --unregister < 发行版名称 >
# 例如
wsl --unregister Ubuntu-24.04
将导出的发行版导入到自己选择的位置
wsl --import < 自己起的发行版名称 > < 导入位置 > < 导出的发行版.tar 压缩包所在位置 >
# 例如
wsl --import Ubuntu-24.04 D:\WSL\Ubuntu-24.04 D:\WSL\Ubuntu-24.04\Ubuntu-24.04.tar
现在就可以删除导出的.tar 压缩包了(如果要做备份那可以保留)
下面是一些常用的 wsl 命令:
wsl --list --verbose # 或 wsl -l -v 列出所有已安装的发行版及使用的 WSL 版本
wsl --set-default < 发行版名称 > # 设置默认发行版,例如 wsl --set-default Ubuntu-24.04
wsl --shutdown # 关闭所有启动的发行版
wsl -d < 发行版名称 > # 进入发行版,例如 wsl -d Ubuntu-24.04
wsl # 进入默认发行版
WSL是可以使用windows上面配置的proxy的,需要在C:\Users\<user_name>\.wslconfig中配置
比如下面的配置
[experimental]
autoMemoryReclaim=gradual  
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true  #自动使用windows代理
[wsl2]
memory=34359738368
processors=16
然后就可以打开WSL应用来使用linux环境
# 一些常用的linux命令
ls 列举目录文件
cat 查看指定路径文件
vim 调用vim编辑指定路径文件
cd 进入指定路径文件夹
cp 复制指定路径文件到指定路径
rm 删除指定路径文件
sudo 管理员权限运行后面的命令
更多请看 Linux 命令大全 | 菜鸟教程
# vim的使用
进入vim是命令模式,通过hjkl进行上下左右移动光标,按i进入编辑模式,按ESC退出编辑模式
在命令模式下按:wq 后回车,写入文件并退出,按:q! 强制退出不保存
更多请看 Linux vi/vim | 菜鸟教程
如果想要更加强大的命令行,命令行美化可以看看starship,命令行提示优化可以尝试zsh或fish
推荐尝试一下claude code,codex,gemini cli等命令行AI工具
3.换源#
由于网络环境的问题,所以apt包管理器默认的源地址访问性不好,推荐换源为国内镜像站 你可以将源理解成不同的应用分发市场,当你使用apt安装应用时,apt会自动从这个地址找到合适版本的软件包
编辑源列表
sudo vim ~/etc/apt/sources.list
你可能会看见类似下面的文字
# See: https://www.kali.org/docs/general-use/kali-linux-sources-list-repositories/
#deb http://http.kali.org/kali kali-last-snapshot main contrib non-free non-free-firmware
#deb http://http.kali.org/kali kali-rolling main contrib non-free
# Additional line for source packages
#deb-src http://http.kali.org/kali kali-last-snapshot main contrib non-free non-free-firmware
deb http://mirrors.ustc.edu.cn/kali kali-rolling main contrib non-free
deb开头即为软件源,可以将原来的源使用#给注释掉,在最下面加上镜像站源
清华源#
访问官网以获取自己版本的信息 ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
cat /etc/os-release # 查看当前系统版本
# 编辑/etc/apt/source.list
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
# 以下安全更新软件源包含了官方源与镜像站配置,如有需要可自行修改注释切换
deb http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ noble-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
ustc源#
cat /etc/os-release # 查看当前系统版本
# 编辑/etc/apt/source.list
# 默认注释了源码仓库,如有需要可自行取消注释
deb https://mirrors.ustc.edu.cn/ubuntu/ noble main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ noble-security main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble-backports main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.ustc.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ noble-proposed main restricted universe multiverse
python环境管理#
虽然miniconda环境管理确实很方便,但是它太过于笨重,很多功能是不必须的,不够轻量化 单纯的python环境管理推荐使用pyenv,轻量、干净、容易重置环境,避免系统 Python 污染. 对比下来miniconda可能需要几个G,而pyenv只需要几十MB
安装系统依赖#
sudo apt-get update; sudo apt-get install -y make build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
安装pyenv#
curl -fsSL https://pyenv.run | bash 
一般发行版使用的默认shell是bash,如下配置即可
# 对于 Bash
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
 
# 如果你使用 Zsh,请将上面的 .bashrc 替换为 .zshrc
验证安装#
source ~/.bashrc
pyenv --version
输出如下则安装成功
安装python#
# 例如,安装 Python 3.10.6
pyenv install 3.10.6
pyenv versions # 查看已安装的 Python 版本,当前正在使用的版本会有一个 * 号标记。
上面我们安装了一个全局python环境,我们在实际使用python时,可能需要根据不同项目的需求选用不同的python版本和包,如果将所有项目的依赖包都安装在一个环境中,极可能出现A包需要某个包大于某一版本,B包需要这一包小于某一版本,从而导致AB包无法兼容的依赖地狱,同时这个环境的体积也会膨胀到极大.
pyenv里面的虚拟环境,可以由一个全局环境创建多个子虚拟环境,这些环境相互独立,不相互干扰,使用时可以通过pyenv activate随时切换环境.
初始化虚拟环境
pyenv virtualenv-init
# 根据提示编辑~/.bashrc,添加eval "$(pyenv virtualenv-init -)"
vim ~/.bashrc
创建虚拟环境
pyenv virtualenv <python版本号> <环境名称>
激活环境
pyenv activate <环境名称或者版本号>
在指定的项目文件夹下使用
pyenv local <环境名称或者版本号>
可以指定项目使用的python环境,并在进入项目时自动切换指定的环境
删除虚拟环境只需要
pyenv virtualenv-delete <环境名称>
Git#
git是版本管理的常用工具 在debian系列linux发行版如ubuntu,debian,kali上面安装,只需要
# 更新当前系统包
sudo apt update 
sudo apt upgrade
# 安装git
sudo apt install git
git配置#
详见 Git 安装配置 | 菜鸟教程 git安装配置教程(小白保姆教程2024最新版)_git安装及配置教程-CSDN博客
设置你的用户信息,邮箱填注册github的邮箱
git config --global user.name "runoob"
git config --global user.email test@runoob.com
生成RSA密钥
ssh-keygen -t rsa -C “注册邮箱”
//执行后一直回车即可
查看公钥
cat ~/.ssh/id_rsa.pub
将打印出来的公钥添加到你的github账户里面,这样你就可以使用git协议传输,而不止https协议
常用命令
git init # 初始化当前目录为一个仓库
git clone <链接> # 克隆指定仓库到当前目录
git add # 添加指定文件或文件夹到缓存区
git commit -m "message" # 提交当前缓存区的所有文件,message用来备注你这次提交的内容
git remote add origin <链接> # 将当前目录下面的仓库与github上面的远程仓库绑定
git push -u origin main  # 推送本地仓库的所有提交到远程仓库
git pull # 拉取远程仓库的更新到本地仓库
浏览器配置#
安装 selenium 及配置 edge 浏览器驱动_edge浏览器驱动-CSDN博客
在WSL里面安装浏览器和对应的驱动,这里以edge为例 教程 基于Ubuntu20.04 Linux系统安装 Microsoft Edge浏览器 详细步骤_ubuntu安装edge浏览器-CSDN博客
## Setup
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo install -o root -g root -m 644 microsoft.gpg /etc/apt/trusted.gpg.d/
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/edge stable main" > /etc/apt/sources.list.d/microsoft-edge-dev.list'
sudo rm microsoft.gpg
## Install
sudo apt update
sudo apt install microsoft-edge-stable # 推荐安装稳定版


在WSL里面安装的应用可以通过命令行或在windows里面搜索来打开 命令行输入
microsoft-edge
打开edge
查看edge版本

放到虚拟环境目录里面去,一般路径为
~/.pyenv/versions/<python版本>/envs/<环境名字>/bin
这里可以通过windows资源管理器管理
一些工具#
VsCode#
VsCode可以直接连接到WSL,打开某一目录作为工作区,这样就可以在VsCode中编辑文件,推荐github学生认证,然后搭配vscode copilot使用
everything#
windows下的快速文件搜索工具
listary#
windows下的快速启动应用工具
mobaxterm#
终端工具,支持多种协议,功能全面
参考资料#
windows11 安装WSL2全流程_wsl2安装-CSDN博客
【终极指南】Pyenv 安装与使用详解(macOS, Linux, Windows 全平台)-CSDN博客
git安装配置教程(小白保姆教程2024最新版)_git安装及配置教程-CSDN博客

