WSL 安装与 Ubuntu 24.04 配置使用指南

WSL 安装与 Ubuntu 24.04 配置使用指南

目录

  1. [WSL 安装](#WSL 安装)
  2. [安装 Ubuntu 发行版](#安装 Ubuntu 发行版)
  3. [Ubuntu 基础配置](#Ubuntu 基础配置)
  4. [迁移发行版至 D 盘](#迁移发行版至 D 盘)
  5. 虚拟磁盘空间压缩
  6. 常用命令速查

一、WSL 安装

1.1 启用 Windows 功能

管理员身份 打开 PowerShell,依次执行以下两条命令,完成后重启电脑

powershell 复制代码
# 启用 WSL 基础功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

# 启用虚拟机平台(WSL 2 必需)
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

备选方案 :若命令执行失败,可通过 控制面板 → 程序 → 启用或关闭 Windows 功能,勾选 「适用于 Linux 的 Windows 子系统」 后重启。

1.2 安装 WSL 内核

推荐从 WSL 官方 GitHub Releases https://github.com/microsoft/WSL/releases 下载最新的 .msi 安装包,双击运行完成安装,速度优于 wsl --installwsl --update --web-download 在线方式。

1.3 设置默认版本为 WSL 2

powershell 复制代码
wsl --set-default-version 2

二、安装 Ubuntu 发行版

2.1 查看可用发行版

powershell 复制代码
wsl --list --online

2.2 安装发行版(三种方式)

方式一:命令行在线安装

powershell 复制代码
wsl --install -d Ubuntu-24.04

方式二:安装时直接指定存储路径(推荐,避免后续迁移)

powershell 复制代码
wsl --install -d Ubuntu-24.04 --location "D:\WSL\Ubuntu-24.04"

方式三:从本地文件离线安装 (从 Ubuntu 官网下载 .wsl 文件后)

powershell 复制代码
wsl --install --from-file "D:\wsl\ubuntu-24.04.3-wsl-amd64.wsl" 
    --location "D:\WSL\Ubuntu-2404" 
    --name Ubuntu-24.04

备选方案 :打开 Microsoft Store,搜索 Ubuntu 24.04 并安装,首次启动时按提示设置用户名和密码。


三、Ubuntu 基础配置

3.1 设置默认登录用户

若默认以 root 身份登录,可在 WSL 内修改配置文件来指定默认用户:

bash 复制代码
sudo nano /etc/wsl.conf

写入以下内容(将 your_username 替换为实际用户名):

ini 复制代码
[user]
default=your_username

保存后,在 PowerShell 中执行以下命令重启 WSL 使配置生效:

powershell 复制代码
wsl --shutdown

3.2 更换 apt 软件源(加速国内下载)

清华大学 TUNA 镜像源 为例,适用于 Ubuntu 24.04(代号 noble)。

第一步:备份原有源文件

bash 复制代码
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak

第二步:创建新的源配置文件

bash 复制代码
sudo nano /etc/apt/sources.list.d/tuna.sources

写入以下内容:

ini 复制代码
Types: deb
URIs: https://mirrors.tuna.tsinghua.edu.cn/ubuntu/
Suites: noble noble-updates noble-backports
Components: main universe restricted multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

Types: deb
URIs: https://mirrors.tuna.tsinghua.edu.cn/ubuntu/
Suites: noble-security
Components: main universe restricted multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

第三步:更新软件包列表

bash 复制代码
sudo apt update

3.3 启动 WSL 并登录 Ubuntu-24.04

启动方式

方式一:开始菜单

在 Windows 开始菜单搜索 Ubuntu 24.04,点击图标直接启动并进入 Shell。

方式二:PowerShell / 命令提示符

powershell 复制代码
# 启动默认发行版
wsl

# 启动指定发行版
wsl -d Ubuntu-24.04

# 以指定用户登录
wsl -d Ubuntu-24.04 -u your_username

方式三:Windows Terminal

打开 Windows Terminal,点击标签栏 旁的下拉箭头,选择 Ubuntu-24.04 即可直接开启一个新标签页并登录。

查看运行状态
powershell 复制代码
# 查看所有已安装发行版及运行状态
wsl -l -v

输出示例:

复制代码
  NAME            STATE           VERSION
* Ubuntu-24.04    Running         2
退出与关闭
bash 复制代码
# 在 WSL 内退出当前会话(仅关闭终端窗口,WSL 后台仍在运行)
exit
powershell 复制代码
# 停止指定发行版
wsl --terminate Ubuntu-24.04

# 停止全部 WSL 实例及虚拟机(彻底释放内存)
wsl --shutdown

提示exit 只是退出 Shell 会话,WSL 虚拟机进程通常仍在后台运行。若需彻底释放内存,请在 PowerShell 中执行 wsl --shutdown


四、迁移发行版至 D 盘

⚠️ 操作前请确保重要数据已备份。 注销步骤将永久删除原有安装。

4.1 方式一:导出 → 注销 → 重新导入(全版本通用)

步骤 1:导出当前发行版为 tar 备份包

powershell 复制代码
# 先确保目标目录存在
mkdir D:\WSLBackup

wsl --export Ubuntu-24.04 D:\WSLBackup\ubuntu24.tar

步骤 2:注销原发行版(从 C 盘删除)

powershell 复制代码
wsl --unregister Ubuntu-24.04

步骤 3:将备份导入至 D 盘新路径

powershell 复制代码
wsl --import Ubuntu-24.04 D:\WSL\Ubuntu24 D:\WSLBackup\ubuntu24.tar --version 2

导入后默认以 root 用户登录,需按 [3.1 节](#3.1 节) 重新配置默认用户。

步骤 4:验证迁移结果

powershell 复制代码
wsl -l -v
wsl -d Ubuntu-24.04

4.2 方式二:直接移动(WSL 较新版本支持)

powershell 复制代码
wsl --manage Ubuntu-24.04 --move "D:\WSL\Ubuntu-24.04"

五、虚拟磁盘空间压缩

WSL 的虚拟磁盘(.vhdx)在删除文件后不会自动收缩,可按以下步骤手动压缩回收空间。

powershell 复制代码
# 第一步:关闭所有 WSL 实例
wsl --shutdown

# 第二步:启动 diskpart 工具
diskpart

进入 diskpart 交互式窗口后,依次执行(路径根据实际情况修改):

复制代码
select vdisk file="D:\WSL\Ubuntu24\ext4.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk
exit

保存为脚本手动执行(推荐)

将 diskpart 指令保存为独立文件 compact-wsl.txt(内容如下),再通过 PowerShell 脚本统一调用,每次需要压缩时双击或直接运行即可。

compact-wsl.txt

复制代码
select vdisk file="D:\WSL\Ubuntu24\ext4.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk
exit

compact-wsl.ps1(以管理员身份运行):

powershell 复制代码
# 关闭所有 WSL 实例
wsl --shutdown
# 执行 diskpart 压缩脚本
diskpart /s "$PSScriptRoot\compact-wsl.txt"
Write-Host "压缩完成。" -ForegroundColor Green

如需定期自动执行,可在 Windows 任务计划程序 中新建任务,操作设置为:程序 powershell.exe,参数 -ExecutionPolicy Bypass -File "D:\scripts\compact-wsl.ps1"


六、常用命令速查

6.1 WSL 发行版管理(在 PowerShell 中执行)

命令 说明
wsl --list --online 查看所有可在线安装的发行版
wsl -l -v 列出已安装发行版及其状态、WSL 版本
wsl --install -d <发行版名> 安装指定发行版
wsl -d <发行版名> 启动指定发行版
wsl --set-default <发行版名> 设置默认启动的发行版
wsl --set-default-version 2 设置新安装发行版默认使用 WSL 2
wsl --set-version <发行版名> 2 将已安装发行版转换为 WSL 2
wsl --terminate <发行版名> 停止指定发行版
wsl --shutdown 停止全部 WSL 实例及虚拟机
wsl --export <发行版名> <文件.tar> 导出备份
wsl --import <名> <路径> <文件.tar> 从备份导入
wsl --unregister <发行版名> 注销并永久删除发行版
wsl --manage <发行版名> --move <路径> 移动发行版存储位置
wsl --update 更新 WSL 内核

6.2 Ubuntu 常用命令(在 WSL 内执行)

文件与目录

命令 说明
pwd 显示当前目录路径
ls -lh 详细列出目录内容(含文件大小)
cd ~ 切换到用户主目录
cp -r <src> <dst> 递归复制目录
rm -rf <dir> 递归删除目录 ⚠️ 请谨慎使用
find . -name "*.cpp" 在当前目录递归搜索文件

软件包管理

命令 说明
sudo apt update 刷新软件包列表
sudo apt upgrade 升级所有已安装软件包
sudo apt install <包名> 安装指定软件包
sudo apt remove <包名> 卸载指定软件包
apt search <关键词> 搜索可用软件包

系统信息

命令 说明
df -h 查看磁盘空间(含 /mnt/c/ 等 Windows 分区)
free -h 查看内存使用情况
`ps aux grep <进程名>`
uname -a 查看内核版本信息

6.3 WSL 与 Windows 互操作

在 Ubuntu 中调用 Windows 程序:

bash 复制代码
explorer.exe .          # 在当前目录打开 Windows 文件资源管理器
notepad.exe file.txt    # 用记事本打开文件
code .                  # 用 VS Code 打开当前目录(需安装 VS Code)

在 PowerShell 中执行 Linux 命令:

powershell 复制代码
# 不进入 WSL 直接执行 Linux 命令
wsl -d Ubuntu-24.04 ls -lh /home
wsl -d Ubuntu-24.04 cat /etc/os-release

访问 WSL 文件系统:

  • 在 Windows 文件资源管理器地址栏输入 \\wsl$\Ubuntu-24.04 可直接访问 WSL 内的文件。
  • WSL 中可通过 /mnt/c//mnt/d/ 等路径访问 Windows 各盘符。

日常使用提示

  • 启动 :开始菜单搜索 Ubuntu 点击,或在终端执行 wsl / wsl -d Ubuntu-24.04
  • 退出 :WSL 内执行 exit 关闭当前会话;PowerShell 执行 wsl --shutdown 彻底停止所有 WSL 进程。
  • 共享目录 :将 Windows 下的项目目录软链或直接在 /mnt/ 下访问,可实现 Windows 与 WSL 工具链协同工作。
相关推荐
MDIOT旗舰2 小时前
4G低功耗边缘计算网关:让智能抄表与远程运维从未如此简单
运维·人工智能·边缘计算·modbus·红外抄表·plc智能网关
2302_803132252 小时前
ensp中关于交换机S3700不被识别的错误列举以及vlan 绑定acl后无法删除问题
运维·服务器·网络
拾贰_C2 小时前
【Ubuntu | Nvidia | driver | installation | commend】
linux·运维·ubuntu
.柒宇.2 小时前
Linux 时间同步服务:Chrony 深度笔记
linux·运维·服务器
赴前尘2 小时前
S3 命令行工具 Docker 容器运行
运维·docker·容器
Strugglingler2 小时前
Linux Device Drivers-第六章 高级字符驱动操作
linux·笔记
zjeweler2 小时前
云服务器centos7.6搭建个人网站教程
运维·服务器
PGCCC2 小时前
PostgreSQL DBA 进阶:从日常运维到生产级性能与高可用实战
运维·postgresql·dba
观测云2 小时前
观测云 x AI Agent:运维智能化的范式跃迁实践
大数据·运维·人工智能