Windows Subsystem for Linux (WSL) 安装与配置指南
📋 目录
- Windows Subsystem for Linux (WSL) 安装与配置指南
🚀 一、WSL 简介
Windows Subsystem for Linux (WSL) 允许在 Windows 上直接运行 Linux 环境,无需传统虚拟机或双系统。
主要优势
- 性能卓越:相比虚拟机,WSL 2 启动更快,资源占用更少
- 完整 Linux 体验:支持大多数 Linux 命令行工具和应用
- 完美集成:与 Windows 文件系统互操作,支持跨平台开发
- 开发友好:支持 Docker、VS Code 等工具的无缝集成
📥 二、安装 WSL
方法1:一键安装(推荐)
# 以管理员身份运行 Windows PowerShell
# 输入以下命令:
wsl --install
# 重启电脑
# 重启后自动弹出 Ubuntu 安装窗口,设置用户名和密码
方法2:自定义安装
# 查看可安装的 Linux 版本
wsl --list --online
# 安装指定版本(例如 Ubuntu-22.04)
wsl --install -d Ubuntu-22.04
# 安装 Debian
wsl --install -d Debian
# 安装 Ubuntu 24.04 LTS
wsl --install -d Ubuntu-24.04
方法3:手动启用 WSL 功能
# 以管理员身份运行 PowerShell:
# 启用 WSL 功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
# 启用虚拟机平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
# 重启电脑
# 下载并安装 Linux 内核更新包
# https://aka.ms/wsl2kernel
# 设置 WSL 2 为默认版本
wsl --set-default-version 2
# 安装 Linux 发行版
# 从 Microsoft Store 安装 Ubuntu 或其他发行版
⚙️ 三、WSL 基本配置
1. 设置 WSL 2 为默认版本
wsl --set-default-version 2
2. 查看已安装的发行版
# 查看所有发行版及其状态
wsl --list --verbose
# 或使用简写
wsl -l -v
3. 更新 WSL
# 更新 WSL 内核
wsl --update
# 查看 WSL 版本
wsl --version
💻 四、启动和使用 WSL
方式1:从开始菜单启动
- 点击开始菜单,搜索 "Ubuntu" 或安装的发行版名称
- 点击图标打开 Linux 终端
方式2:从命令行启动
# 在任意目录打开 cmd 或 PowerShell,输入:
wsl
# 直接运行 Linux 命令
wsl ls -la
wsl python3 script.py
# 以特定用户登录
wsl -u username
# 进入特定发行版
wsl -d Ubuntu-22.04
方式3:使用 Windows Terminal(推荐)
-
安装 Windows Terminal
- 在 Microsoft Store 搜索 "Windows Terminal" 并安装
-
设置 WSL 为默认终端
- 打开 Windows Terminal
- 点击下拉箭头 → 设置
- 将默认配置文件设置为 Ubuntu
-
自定义外观
- 支持主题、字体、背景图片
- 支持多个标签页和分屏
📂 五、文件系统管理
Windows 访问 Linux 文件
# 在文件资源管理器地址栏输入:
\\wsl$\Ubuntu
# 或访问特定用户目录
\\wsl$\Ubuntu\home\用户名
Linux 访问 Windows 文件
# Windows 的 C 盘挂在 /mnt/c/ 下
cd /mnt/c/Users/用户名/Desktop
# 复制文件到 Linux
cp /mnt/c/Users/用户名/Desktop/test.txt ~/
# 创建软链接方便访问
ln -s /mnt/c/Users/用户名/Desktop ~/windows-desktop
文件操作最佳实践
- Linux 文件:存放在
/home/用户名/以获得最佳性能 - 项目文件:建议放在 Linux 文件系统中
- 共享文件:可以通过
/mnt/c/访问 Windows 文件 - 性能注意:跨文件系统操作(如从 Linux 访问 Windows 文件)会比原生访问慢
🛠️ 六、开发环境配置
1. 更新系统
sudo apt update && sudo apt upgrade -y
2. 安装基础开发工具
sudo apt install -y \
build-essential \
git \
curl \
wget \
vim \
nano \
htop \
net-tools \
unzip \
zip \
tree
3. 安装 Node.js
# 方法1:使用 NodeSource 仓库(推荐)
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
# 方法2:使用 nvm(Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
nvm install --lts
nvm use --lts
# 验证安装
node --version
npm --version
4. 安装 Python
# 安装 Python 3 和 pip
sudo apt install -y python3 python3-pip python3-venv
# 创建虚拟环境
python3 -m venv myenv
source myenv/bin/activate
# 安装常用包
pip install numpy pandas jupyter
5. 安装 Docker
# 安装 Docker
sudo apt install -y docker.io
# 将当前用户添加到 docker 组(避免使用 sudo)
sudo usermod -aG docker $USER
# 重启终端或重新登录使配置生效
# 启动 Docker 服务
sudo service docker start
# 设置 Docker 开机自启
sudo systemctl enable docker
# 验证安装
docker --version
docker run hello-world
🔧 七、VS Code 集成
1. 安装 VS Code 扩展
- 打开 VS Code
- 安装 Remote Development 扩展包
- 包含:Remote - SSH、Remote - Containers、Remote - WSL
2. 在 WSL 中打开项目
# 在 WSL 终端中进入项目目录
cd ~/my-project
# 使用 code 命令打开 VS Code
code .
# 如果第一次运行,会提示安装 VS Code Server,按提示操作
3. 设置默认终端
- 在 VS Code 中按
Ctrl + Shift + P - 输入 "Terminal: Select Default Profile"
- 选择 "WSL" 或 "Ubuntu"
📝 八、日常使用技巧
1. 设置命令别名
# 编辑 ~/.bashrc 文件
nano ~/.bashrc
# 添加常用别名
alias ll='ls -la'
alias la='ls -a'
alias ..='cd ..'
alias ...='cd ../..'
alias gs='git status'
alias gp='git pull'
alias gc='git commit'
alias please='sudo $(history -p !!)'
# 保存并生效
source ~/.bashrc
2. Windows 和 Linux 互操作
# 在 Linux 中打开 Windows 程序
notepad.exe ~/test.txt
explorer.exe .
calc.exe
# 在 Linux 中使用 Windows 环境变量
echo $PATH
echo $WINDIR
# 在 Windows 中运行 Linux 命令
wsl ls -la
wsl python3 script.py
3. 网络代理配置
# 如果 Windows 使用代理,在 ~/.bashrc 中添加:
export http_proxy="http://127.0.0.1:7890"
export https_proxy="http://127.0.0.1:7890"
export all_proxy="socks5://127.0.0.1:7890"
# 或使用脚本自动获取 Windows 代理
export host_ip=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}')
export http_proxy="http://$host_ip:7890"
export https_proxy="http://$host_ip:7890"
4. 设置默认用户
# 创建 /etc/wsl.conf 文件
sudo nano /etc/wsl.conf
# 添加以下内容:
[user]
default=你的用户名
[network]
hostname = my-wsl
generateHosts = false
[interop]
enabled = true
appendWindowsPath = true
# 保存后,在 PowerShell 中重启 WSL
wsl --terminate Ubuntu
wsl
🔄 九、WSL 常用命令
WSL 管理命令
# 启动默认发行版
wsl
# 关闭 WSL
wsl --shutdown
# 终止特定发行版
wsl --terminate Ubuntu
# 以特定用户登录
wsl -u root
# 运行特定命令
wsl ls -la
wsl --exec bash -c "npm install"
发行版管理
# 查看所有发行版
wsl --list --verbose
# 设置默认发行版
wsl --set-default Ubuntu-22.04
# 导出发行版(备份)
wsl --export Ubuntu D:\wsl-backup\ubuntu.tar
# 导入发行版(恢复)
wsl --import Ubuntu-import D:\wsl\import D:\wsl-backup\ubuntu.tar
# 卸载发行版
wsl --unregister Ubuntu
⚠️ 十、常见问题解决
1. WSL 无法启动
# 以管理员身份运行 PowerShell:
# 重新启用 WSL 功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
# 重启电脑
# 设置 WSL 2 为默认
wsl --set-default-version 2
# 更新 WSL
wsl --update
2. 网络连接问题
# 重置 WSL 网络
# 在 PowerShell 中:
wsl --shutdown
netsh winsock reset
netsh int ip reset all
netsh winhttp reset proxy
ipconfig /flushdns
# 重启电脑
3. 磁盘空间不足
# 查看 WSL 磁盘使用情况
wsl --system -d Ubuntu df -h
# 压缩虚拟硬盘(以管理员身份运行 PowerShell)
diskpart
# 在 diskpart 中:
select vdisk file="C:\Users\用户名\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu_xxx\LocalState\ext4.vhdx"
compact vdisk
detach vdisk
exit
4. 权限问题
# 修复文件权限
sudo chown -R 用户名:用户名 /home/用户名
sudo chmod -R 755 /home/用户名
# 修复 WSL 权限配置
sudo nano /etc/wsl.conf
# 添加:
[automount]
enabled = true
options = "metadata,umask=22,fmask=11"
mountFsTab = false
5. 忘记 Linux 密码
# 在 PowerShell 中以 root 登录
wsl -u root
# 重置用户密码
passwd 用户名
# 退出
exit
🎯 十一、最佳实践建议
1. 项目文件存放位置
- ✅ 推荐:将项目文件放在 Linux 文件系统中(
/home/用户名/projects/) - ❌ 避免:在 Windows 文件系统中(
/mnt/c/)运行性能敏感的操作
2. 备份和迁移
# 定期备份 WSL 发行版
wsl --export Ubuntu D:\backup\ubuntu-$(date +%Y%m%d).tar
# 恢复备份
wsl --import Ubuntu D:\wsl\ D:\backup\ubuntu-20240313.tar
3. 性能优化
# 创建 .wslconfig 文件进行全局配置
# 在 Windows 用户目录创建 C:\Users\用户名\.wslconfig
[wsl2]
memory=4GB
processors=4
localhostForwarding=true
swap=2GB
📚 十二、参考资料
最后更新:2024年3月
适用版本:WSL 2,支持 Windows 10/11