windows 系统读取 Linux Ext 分区硬盘
起因是需要处理一些在硬盘中的数据,硬盘插到我的电脑上后无法读盘,在 Windows 存储管理器中查看显示未分配,需要格式化,但是在 Ubuntu 系统的电脑中可以正常识别,试验了几次后发现是硬盘分区格式导致的问题,需要在 windows 中启用 wsl
安装 wsl (适用于Linux的Windows子系统)
参考链接:
https://learn.microsoft.com/zh-cn/windows/wsl/install
安装 WSL 命令
现在,可以使用单个命令安装运行 WSL 所需的一切内容。 在管理员模式下打开 PowerShell 或 Windows 命令提示符,方法是右键单击并选择“以管理员身份运行”,输入 wsl --install 命令,然后重启计算机。
PowerShell复制
wsl --install
此命令将启用运行 WSL 并安装 Linux 的 Ubuntu 发行版所需的功能。 (可以更改此默认发行版)。
按照提示,安装完成之后,重启计算机,系统会继续完成安装。
安装 Ubuntu 系统
wsl 安装完成后重启系统默认会安装 Ubuntu,也可以选择去 Microsoft Store 商店中进行安装
安装后会需要配置账号密码
硬盘挂载和读取
以管理员方式进入 power shell
列出所有硬盘
PS C:\Windows\system32> wmic diskdrive list brief
结果
PS C:\Windows\system32> wmic diskdrive list brief
Caption DeviceID Model Partitions Size
KINGSTON SA400S37960G \\.\PHYSICALDRIVE0 KINGSTON SA400S37960G 5 960194511360Samsung SSD 870 QVO 8TB SCSI Disk Device \\.\PHYSICALDRIVE1 Samsung SSD 870 QVO 8TB SCSI Disk Device 0 8001560609280
挂载对应硬盘
注意:请注意选择需要挂载的硬盘路径
\\.\PHYSICALDRIVE1
PS C:\Windows\system32> wsl --mount \\.\PHYSICALDRIVE1
结果
PS C:\Windows\system32> wsl --mount \\.\PHYSICALDRIVE1
已成功将磁盘装载为“/mnt/wsl/PHYSICALDRIVE1”。
注意: 如果已修改 /etc/wsl.conf 中的 automount.root 设置,则位置将不同。
若要卸载和分离磁盘,请运行“wsl.exe --unmount \\.\PHYSICALDRIVE1”。
进入 Windows 中的 Ubuntu 子系统
如果上面 Ubuntu 系统安装成功的话,直接执行 wsl 命令即可进入
PS C:\Windows\system32> wsl
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.
qyf@DESKTOP-9GC83H8:/mnt/c/Windows/system32$
查看硬盘中的文件
qyf@DESKTOP-9GC83H8:/mnt/c/Windows/system32$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 389.8M 1 disk
sdb 8:16 0 4G 0 disk [SWAP]
sdc 8:32 0 1T 0 disk
sdd 8:48 0 1T 0 disk /snap/mnt/wslg/distro/
sde 8:64 0 7.3T 0 disk /mnt/wsl/PHYSICALDRIVE1qyf@DESKTOP-9GC83H8:/mnt/c/Windows/system32$ cd /mnt/wsl/PHYSICALDRIVE1/qyf@DESKTOP-9GC83H8:/mnt/wsl/PHYSICALDRIVE1$ ls
downloads lost+found mvn
总结
至此已完成了在 Windows 系统中读取 Linux 分区硬盘中的内容,虽然最后没有采用这种方式去读取数据,但是也算是一种新的研究。