📌 usbipd-win
1、安装 usbipd-win 项目:
1.1、首先,确保你的 WSL 命令行已打开,这将使 WSL 2 轻型 VM 保持活动状态。
1.2、安装开源 usbipd-win 项目。你可以从 usbipd-win 项目的最新发布页下载 .msi 文件并运行安装程序。或者,你也可以使用 Windows 程序包管理器程序 (winget) 来安装 usbipd-win 项目,只需运行以下命令:
winget install --interactive --exact dorssel.usbipd-win
1.3、安装完成后,你将获得以下组件:名为 usbipd 的服务(显示名称:USBIP 设备主机)。
1.3.1、命令行工具 usbipd,其位置将添加到 PATH 环境变量。
1.3.2、名为 usbipd 的防火墙规则,用于允许所有本地子网连接到服务。
2、附加 USB 设备:
2.1、在附加 USB 设备之前,请确保 WSL 命令行已打开,以使 WSL 2 轻型 VM 保持活动状态。
2.2、使用 PowerShell 运行以下命令,列出所有连接到 Windows 的 USB 设备:
usbipd list
2.3、选择要在 WSL 中使用的设备总线 ID,然后运行以下命令,共享设备并允许它附加到 WSL:
usbipd bind --busid <busid>
2.4、最后,运行以下命令附加 USB 设备:
usbipd attach --wsl --busid <busid>
2.5、在 WSL 提示符下,运行 lsusb 命令以验证 USB 设备是否已列出,并且可以使用 Linux 工具与之交互。
3、使用完毕后:
在 WSL 中完成设备使用后,可物理断开 USB 设备,或者 PowerShell 运行以下命令:
usbipd detach --busid <busid>
📌 挂载磁盘
1、把硬盘接到电脑上
2、用管理员权限打开Powershell
在powershell中输入以下命令查看硬盘信息
GET-CimInstance -query "SELECT * from Win32_DiskDrive"
PS C:\Users\luciu> GET-CimInstance -query "SELECT * from Win32_DiskDrive"
DeviceID Caption Partitions Size Model
-------- ------- ---------- ---- -----
\\.\PHYSICALDRIVE0 CT1000P2SSD8 3 1000202273280 CT1000P2SSD8
\\.\PHYSICALDRIVE2 ThinkBook SU710 SCSI Disk Device 1 1024203640320 ThinkBook SU710 SCSI Disk Device
PS C:\Users\luciu>
3、挂载磁盘(可以显示该盘但还不能访问分区)
wsl --mount \\.\PHYSICALDRIVE2 --bare
转到WLS终端:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 388.5M 1 disk
sdb 8:16 0 4G 0 disk [SWAP]
sdc 8:32 0 1T 0 disk /mnt/wslg/distro
sdd 8:48 0 1.8T 0 disk
└─sdd1 8:49 0 1.8T 0 part
其中的sdd1就是我们需要挂载的设备了。
4、识别文件系统
WLS终端:
$ sudo blkid /dev/sdd1
[sudo] password for lucius:
/dev/sdd1: LABEL="SU710" UUID="75909fb5-7ee6-f34a-8764-e6afa484b025" TYPE="ext4" PARTLABEL="Linux data partition" PARTUUID="361bd770-5139-4173-858a-4818b3d1a918"
其中的 TYPE=“ext4”就告诉了我们这是一块ext4格式的硬盘。
如果用blkid回车后没有任何输出,可以尝试加上sudo后重试。我当时就疑惑了久为什么它没有任何输出……
5、挂载磁盘分区(可以访问分区内容了)
注意,此时又要回到Powershell中进行操作:
wsl --mount \\.\PHYSICALDRIVE2 --partition 1 --type ext4
此时该硬盘会自动挂载到WSL系统中的 /mnt/wsl目录中。
如果想从资源管理器访问,可以在地址栏输入 \\wsl$\Ubuntu-18.04\mnt\wsl\。
记得替换Ubunto-18.04 为实际使用的版本。如果不确定也可以先输入 wsl$打开WSL目录逐级进入。
6、卸载
在powershell中操作:
wsl --unmount \\.\PHYSICALDRIVE2
📌 挂载加密磁盘
被LUKS 加密的ext4硬盘
1、在WIN管理员终端查看和挂载加密磁盘分区到WSL2
GET-CimInstance -query "SELECT * from Win32_DiskDrive"
wsl --mount \\.\PHYSICALDRIVEx --bare
2、在WSL2中命令查看加密的磁盘和分区
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 388.5M 1 disk
sdb 8:16 0 2G 0 disk [SWAP]
sdc 8:32 0 1.8T 0 disk
└─sdc1 8:33 0 1.8T 0 part
sdd 8:48 0 1T 0 disk /mnt/wslg/distro
3、解锁加密的磁盘分区,并将其映射为一个可访问的设备
sudo cryptsetup luksOpen /dev/sdc1 encrypted_disk
Enter passphrase for /dev/sdc1:
4、挂载解密后的分区
sudo mount /dev/mapper/encrypted_disk /mnt/x8
📌 WSL切换默认发行版
wsl --set-default Ubuntu-20.04
运行这个命令后,Ubuntu 20.04 会成为默认的 WSL 发行版。以后只需输入 wsl,系统就会启动 Ubuntu 20.04。如果还需要启动 Ubuntu 18.04,可以使用以下命令指定版本:
wsl -d Ubuntu-18.04
📌 WSL卸载
1、打开终端(命令提示符或 PowerShell)。
2、查看所有已安装的 WSL 分发版:
wsl --list
或者更详细版本:
wsl --list --verbose
3、找到 Ubuntu 24.04 的名称后,运行以下命令卸载它:
wsl --unregister Ubuntu-24.04
这将从你的系统中移除该分发版(包括所有相关的文件和数据)。
注意:卸载后,与该分发版相关的所有文件和设置都会被清除。如果有重要数据,记得先进行备份。