windows11的ubuntu子系统如何识别到U盘

这是 WSL 的设计限制 + Windows 对 USB 的管理方式 导致的,不是你系统坏了。

WSL(包括 Windows 11 的 Ubuntu 子系统)默认是"看不到"U 盘的块设备的。

  • ❌ 看不到 /dev/sdX

  • ❌ 不能直接 mount /dev/sdb1

  • ✅ 只能通过 Windows 挂载 → WSL 访问 Windows 文件系统

  • 或使用 usbipd 把 USB 设备"直通"给 WSL2

一、为什么 WSL 识别不到 U 盘?

1️⃣ WSL2 不是完整物理 Linux

WSL2 架构是:Windows └─ Hyper-V 虚拟机(WSL2 Linux Kernel)

  • USB 控制器在 Windows

  • Linux 内核 不直接接管 USB

  • 所以:

    • /dev/sdb

    • /dev/sdc

    • /sys/block

👉 默认不存在


2️⃣ Windows 已经"占用"了 U 盘

插 U 盘后:

  • Windows 会:

    • 识别分区

    • 自动挂载

    • 分配盘符(如 E:)

👉 这个设备已经被 Windows 独占

👉 WSL 不能再直接访问

二、正确访问 U 盘的 3 种方式(推荐顺序)


✅ 方式 1(最推荐):通过 /mnt 访问 Windows 挂载的 U 盘

操作步骤

1️⃣ 先在 Windows 里插 U 盘

  • 比如分配为 E:

2️⃣ 在 WSL 里访问

ls /mnt/e

优点

  • 最稳定

  • 不折腾权限

  • 不破坏 Windows

缺点

  • ❌ 不能做:

    • mkfs

    • dd

    • smartctl

    • 底层块设备操作

👉 只适合文件读写


⚠️ 方式 2:usbipd 直通 U 盘到 WSL2(高级)

这是唯一能在 WSL 里看到 /dev/sdX 的方式

适用场景

  • 需要:

    • dd

    • mkfs

    • 测试 U 盘

    • 固件工具

    • 烧录镜像


步骤(Windows 11)

1️⃣ 安装 usbipd

winget install usbipd

2️⃣ 插入 U 盘,查看设备

usbipd list

会看到类似:

BUSID VID:PID DEVICE 1-3 0781:558a SanDisk Ultra

3️⃣ 绑定到 WSL

usbipd bind --busid 1-3

usbipd attach --wsl --busid 1-3

4️⃣ 进入 WSL

lsblk

你现在就能看到:

sdb └─sdb1

⚠️ 注意(非常重要)

  • 绑定后:

    • Windows 无法再访问该 U 盘
  • 用完要解绑:

usbipd detach --busid 1-3


相关推荐
c238561 分钟前
git常见错误和ssh验证推送
运维·git·ssh
哈德森hh4 分钟前
从手动操作到自动化管理:Twitter多账号运营效率优化实践
运维·自动化·twitter
IT WorryFree9 分钟前
ESXi 全维度监控方式完整分类(按使用场景排序)
运维·服务器·网络
专注搞钱25 分钟前
FAB设备OEE自动化分析工具:月度报表从2天缩短到30秒
运维·自动化
加加and减减32 分钟前
Docker真实安装mysql8教程并优化配置
运维·mysql·docker·容器
十六年开源服务商2 小时前
2026社交媒体营销×WordPress运维:实战避坑指南
运维·媒体
江南风月2 小时前
Hermes Agent 接入WGCLOUD实战:打造团队 AI 智能运维解决方案
运维·zabbix·运维开发·prometheus
黄焖鸡能干四碗2 小时前
软件系统概要设计说明书模版(Word)
大数据·运维·数据库·架构·需求分析
qiuziqiqi2 小时前
ocker-compose.yml 和Dockerfile 区别
运维·docker·容器
宇晨T2 小时前
BurpSuite实战:WackoPicko敏感目录探测
linux·运维·服务器