【WSL】安装并配置适用于Linux的Windows子系统(WSL)

【WSL】安装并配置适用于Linux的Windows子系统(WSL)

安装并配置适用于Linux 的Windows子系统(WSL)


引言

适用于 Linux 的 Windows 子系统(WSL)是 Windows 的一项功能,可用于在 Windows 计算机上运行 Linux 环境,而无需单独的虚拟机或双重启动。 WSL 旨在为想要同时使用 Windows 和 Linux 的开发人员提供无缝高效的体验。


一、安装WSL

右键单击并选择“以管理员身份运行”,在管理员模式下打开 PowerShell,输入 wsl --install 命令,然后重新启动计算机。

wsl --install 

完成后在PowerShell下运行如下命令可以查看已经安装的Linux发行版:

wsl --list --verbose 
在这里插入图片描述

但是,不出意外的话就要出意外了。
国内环境下,由于 GitHub 连接不稳定,应该是无法直接安装 Linux 系统。运行上述代码时会出现如下错误:

无法从“https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json”提取列表分发。操作超时。
错误代码: Wsl/InstallDistro/WININET_E_TIMEOUT

出现上述问题则需要手动安装 Linux 发行版。


二、手动下载并安装Ubuntu(或其他发行版)

2.1 从官方镜像站下载 WSL 发行版包

访问 Ubuntu 资源官网:https://releases.ubuntu.com/
这里选择下载 Ubuntu 24.04 LTS

在这里插入图片描述


点进去之后找到 WSL image 并下载:

在这里插入图片描述

2.2 手动导入并安装

在 WSL 中导入并安装 Linux 发行版的命令语法如下:

wsl --import <发行版名称><安装目录><tar 或 wsl 包路径>[选项]

比如我在 PowerShell 中运行如下命令进行安装:

wsl --import Ubuntu-24.04 "D:\ProgramData\WSL\Ubuntu-24.04""C:\Users\wyq15\Downloads\ubuntu-24.04.3-wsl-amd64.wsl" --version 2

2.3 验证安装

完成后在 PowerShell 下运行如下命令可以查看已经安装完毕:

wsl --list --verbose 
在这里插入图片描述

三、给WSL更换清华源(可选)

在 WSL 中安装的 Ubuntu 版本在使用 apt 安装软件时速度较慢,因此更换国内源,这里采取自动更换的方式,确保更换无误。

备份原始配置:

sudocp /etc/apt/sources.list /etc/apt/sources.list.bak 
如果换源后出问题,可随时恢复:

更换源代码如下:

UBUNTU_CODENAME=$(lsb_release -cs)echo"deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ $UBUNTU_CODENAME main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ $UBUNTU_CODENAME-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ $UBUNTU_CODENAME-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ $UBUNTU_CODENAME-security main restricted universe multiverse"|sudotee /etc/apt/sources.list 

更新软件包索引:

sudoapt clean # 清理旧缓存sudoapt update # 从新源拉取软件列表

四、使用Xshell连接WSL(可选)

在正常使用时 PowerShell 感觉用的并不习惯,因此采用 Xshell 通过 SSH 远程控制。这里需要下载一些搭配使用的软件。

4.1 下载并安装 Xshell

官网免费授权版本:https://www.xshell.com/zh/free-for-home-school/

在这里插入图片描述


直接下载并安装就行了,这里就不过多赘述了。

4.2 在 WSL 中安装并配置 OpenSSH Server

  • 启动 WSL
wsl -d Ubuntu-24.04 
  • 更新包列表并安装 openssh-server
sudoapt update sudoaptinstall openssh-server -y 

由于后续要编辑配置,我习惯使用 vim ,因此这里也装个 vim

sudoaptinstallvim -y 
在这里插入图片描述
  • 修改 SSH 配置(关键!关键!关键!
    默认 SSH 端口是 22,但 Windows 可能已占用(如 Windows 自带的 OpenSSH 服务)。建议改为非冲突端口,例如 2222
sudovim /etc/ssh/sshd_config 

找到 #Port 22,修改为:

Port 2222
在这里插入图片描述

同时确保以下选项启用:

PermitRootLogin yes# 如果你想用 root 登录 PasswordAuthentication yes# 允许密码登录(Xshell 需要)
在这里插入图片描述


在这里插入图片描述


修改完后保存::wq

  • 启动 SSH 服务
sudo systemctl restart ssh
在这里插入图片描述
  • 设置开机自启(可选)
sudo systemctl enablessh
在这里插入图片描述
  • 设置root用户密码
sudopasswd
在这里插入图片描述

4.3 在Xshell中配置连接


连接成功

在这里插入图片描述

五、WSL常用命令

当然可以!以下是一份 WSL(Windows Subsystem for Linux)常用命令速查清单,涵盖 管理发行版、启动/关闭、导入导出、版本切换、网络配置 等高频操作,适用于 WSL 1 和 WSL 2(以 PowerShell 或 CMD 为主)。

5.1 基础信息查看

命令说明
wsl -l列出已安装的发行版(简略)
wsl -l -v列出所有发行版 + 状态 + WSL 版本(最常用✅)
wsl --status查看 WSL 整体状态(内核版本、默认发行版等)
wsl -d <名称>启动指定发行版(如 wsl -d Ubuntu-24.04
wsl启动默认发行版

5.2 动与关闭

命令说明
wsl --shutdown立即关闭所有 WSL 虚拟机(释放内存/CPU,推荐日常使用✅)
wsl --terminate <发行版名>强制终止某个发行版(如 wsl --terminate Ubuntu-24.04
wsl -d <名称> -u <用户名>以指定用户身份启动(如 wsl -d Ubuntu -u alice

5.3 安装与卸载发行版

命令说明
wsl --install安装默认发行版(Ubuntu)和 WSL 2(需管理员权限)
wsl --install -d <发行版名>安装指定发行版(如 wsl --install -d Debian
wsl --unregister <发行版名>彻底删除该发行版及其所有数据(不可逆⚠️)
wsl --set-default <发行版名>设置默认启动的发行版
💡 可用发行版列表:
Ubuntu, Debian, KaliLinux, openSUSE-Leap-15.5, SLES-15-SP5 等(需先在 Microsoft Store 安装或手动导入)

5.4 导入与导出(迁移/备份)

命令说明
wsl --export <名称> <备份路径.tar>导出发行版为 tar 包(用于备份或迁移)
例:wsl --export Ubuntu D:\backup\ubuntu.tar
wsl --import <新名称> <安装目录> <tar路径> [--version 2]从 tar 包导入新发行版
例:wsl --import MyUbuntu D:\WSL\MyUbuntu D:\backup\ubuntu.tar --version 2
这是将 WSL 移到 D 盘的标准方法!

5.5 版本管理(WSL 1 ↔ WSL 2)

命令说明
wsl --set-version <名称> 2将发行版升级到 WSL 2(推荐✅)
wsl --set-version <名称> 1降级到 WSL 1(兼容性需求)
wsl --default-version 2设置新安装发行版默认使用 WSL 2
💡 WSL 2 性能更好,但需要 Windows 10 2004+ 或 Win11。

5.6 网络与 SSH(连接 Xshell 等)

操作说明
在 WSL 中安装 SSH:
sudo apt install openssh-server
启用 SSH 服务
修改端口:
sudo nano /etc/ssh/sshd_configPort 2222
避免与 Windows 冲突
启动 SSH:
sudo service ssh start
手动启动
Windows 防火墙放行 2222 端口否则 Xshell 无法连接
Xshell 连接地址:
主机:127.0.0.1,端口:2222
本地回环连接

5.7 文件系统互访

路径说明
Windows → WSL在 WSL 中访问:/mnt/c/, /mnt/d/
WSL → Windows在 Windows 中访问:
\\wsl$\<发行版名>\(资源管理器地址栏输入)
例:\\wsl$\Ubuntu-24.04\home
✅ 推荐用 \\wsl$ 方式在 Windows 中直接操作 Linux 文件!

5.8 高级配置

1. 全局配置文件(控制内存、swap、内核等)

  • 路径:%USERPROFILE%\.wslconfig
  • 修改后执行:wsl --shutdown 生效

示例:

[wsl2] memory=4GB processors=2 swap=2GB swapFile=D:/WSL/swap.vhdx localhostForwarding=true 

2. 单个发行版配置

  • 路径(在 WSL 内):/etc/wsl.conf

示例:

[user] default = alice [automount] enabled = true options = "metadata,umask=22,fmask=11" 

5.9 清理与优化

命令说明
wsl --update更新 WSL 内核(需联网)
wsl --update rollback回滚到上一个内核版本
手动压缩 vhdx:
diskpartselect vdisk file="D:\WSL\ext4.vhdx"attach vdisk readonlycompact vdiskdetach vdisk
减小虚拟硬盘占用

5.10 实用技巧

  • 快速进入 WSL 目录:在 Windows 资源管理器地址栏输入 \\wsl$
  • 默认用户不是 root?在 /etc/wsl.conf 中设置 [user]\ndefault = yourname
  • C 盘满了?用 wsl --export + wsl --import 迁移到 D 盘
  • 忘记密码?以 root 启动:wsl -u root,然后 passwd username 重置

5.11 总结:最常用 5 条命令

wsl -l -v # 查看所有发行版状态 wsl --shutdown # 关闭所有 WSL(日常必用) wsl --export Ubuntu backup.tar # 备份 wsl --import NewUbuntu D:\WSL\NewUbuntu backup.tar --version 2 # 迁移 wsl --set-version Ubuntu 2 # 升级到 WSL 2

Read more

为省5-10美元差点毁库!Claude一条指令删光200万条数据、网站停摆24小时,创始人坦言:全是我的错

为省5-10美元差点毁库!Claude一条指令删光200万条数据、网站停摆24小时,创始人坦言:全是我的错

编译 | 屠敏 出品 | ZEEKLOG(ID:ZEEKLOGnews) AI 时代,一次看似普通的操作,竟能让整套生产环境与近 200 万条数据瞬间「归零」。 近日,数据科学社区 DataTalks.Club 创始人 Alexey Grigorev 就遭遇了这样的惊魂时刻,他在使用 AI 编程工具 Claude Code 管理网站服务器时,意外清空了平台积累 2.5 年的核心数据,甚至连数据库快照也未能幸免,导致网站停摆整整 24 小时。 这起事故不仅在开发者社区引发热议,更给所有依赖 AI 工具与自动化运维的从业者敲响了警钟。事后,Alexey Grigorev 公开复盘了整个过程,并揭露了此次事故的核心问题。让我们一起看看。 一次看似很普通的网站迁移 这场“删库”事件的前因,其实并不复杂。

By Ne0inhk
星标超 28 万,OpenClaw 两天两次大更!适配GPT 5.4,告别“抽卡式 Prompt”

星标超 28 万,OpenClaw 两天两次大更!适配GPT 5.4,告别“抽卡式 Prompt”

整理 | 梦依丹 出品 | ZEEKLOG(ID:ZEEKLOGnews) “We don’t do small releases.” 这是 OpenClaw 在发布 2026.3.7 版本时写下的一句话。 刚刚过去的周六与周日,这个 GitHub 星标已超 28 万 的 AI Agent 开源项目再次迎来两轮重量级更新。 两天两次更新:OpenClaw 做了一次“真正的大版本升级” 打开 OpenClaw 的 GitHub 更新日志,你会发现这次版本更新的规模确实不小。在 3 月 7 日发布更新后,第二天又迅速推出 2026.3.8-beta.1 和

By Ne0inhk
苹果最贵手机要来了!折叠屏iPhone将于9月亮相;部分高校严禁校内使用OpenClaw;黄仁勋预言:传统软件和APP或将消失 | 极客头条

苹果最贵手机要来了!折叠屏iPhone将于9月亮相;部分高校严禁校内使用OpenClaw;黄仁勋预言:传统软件和APP或将消失 | 极客头条

「极客头条」—— 技术人员的新闻圈! ZEEKLOG 的读者朋友们好,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。(投稿或寻求报道:[email protected]) 整理 | 郑丽媛 出品 | ZEEKLOG(ID:ZEEKLOGnews) 一分钟速览新闻点! * 多所高校要求警惕 OpenClaw 安全风险,部分严禁校内使用 * 荣耀 CEO 李健:荣耀机器人全栈自研,将聚焦消费市场 * 马化腾凌晨 2 点发声:还有一批龙虾系产品陆续赶来 * 前快手语言大模型中心负责人张富峥,已加入智源人工智能研究院,负责 LLM 方向 * 最新全球 AI 应用百强榜发布,豆包/DeepSeek/千问上榜 * 苹果折叠 iPhone 将于九月亮相,融合 iPhone 与 iPad 体验

By Ne0inhk
不止“996”!曝硅谷AI创业圈「极限工作制」:每天16小时、凌晨3点下班、周末也在写代码

不止“996”!曝硅谷AI创业圈「极限工作制」:每天16小时、凌晨3点下班、周末也在写代码

编译 | 郑丽媛 出品 | ZEEKLOG(ID:ZEEKLOGnews) “如果你周日去旧金山的咖啡馆,会发现几乎每个人都在工作。” 这是 AI 创业公司 Mythril 联合创始人 Sanju Lokuhitige 最近最直观的感受。去年 11 月,他特地搬到旧金山,只为了更接近 AI 创业浪潮的中心。但很快,他也被卷入了这股浪潮带来的另一面——一种越来越极端的工作文化。 Lokuhitige 坦言,他现在几乎每天工作 12 小时,每周 7 天。除了每周少数几场刻意安排的社交活动(主要是为了和创业者们建立联系),其余时间几乎都在写代码、做产品。 “有时候我整整一天都在编程,”他说,“我基本没有什么工作与生活的平衡。”而这样的生活,在如今的 AI 创业圈里并不算罕见。 旧金山 AI 创业圈的真实日常 一位在旧金山一家 AI

By Ne0inhk