If you dual-boot Windows and Linux, you’ve probably run into this issue before. You boot into Windows to get some work done, open File Explorer to grab a file from your Linux drive, and the drive just isn’t there. It’s plugged in, it’s healthy, and Windows even acknowledges it in Disk Management—but the actual files are nowhere to be found.
Meanwhile, when you’re on the Linux side, your Windows partition usually shows up without any fuss, and you can copy files back and forth all day. That one-sided arrangement makes it feel like Windows is deliberately walling you off from your own files. So what’s actually happening here—and how can you access your Linux files while working inside Windows?
Why Linux partitions are invisible to Windows
Windows isn’t broken—It just doesn’t speak Linux
The problem basically comes down to unsupported file systems. Windows natively understands only a handful of file systems—primarily NTFS, exFAT, FAT32, and the newer ReFS. Meanwhile, Linux distros use completely different file systems, namely ext4, Btrfs, XFS, or ZFS.
Now, Windows lacks the necessary drivers to read these Linux filesystems. As such, when Windows scans the partition, it may appear in Disk Management, but the contents will remain inaccessible from File Explorer.
However, most modern Linux distros ship with NTFS support out of the box, which is why your Windows partition usually mounts automatically when you boot into Linux. You can typically browse, copy, and modify all your Windows files from Linux without any extra setup.
For years, the usual workaround was installing third-party software. People would use free tools like DiskInternals Linux Reader and Ext2Read alongside paid options like Linux File Systems for Windows, which cost around $20.
But here’s the thing—you no longer need third-party software to access Linux files from Windows. Windows 11 includes a built-in workaround for this long-standing problem. It might feel a little hacky, but it works surprisingly well.
Make the invisible visible using WSL2
The solution was hiding inside Windows all along
WSL2, short for Windows Subsystem for Linux 2, is Microsoft’s virtualization-based Linux compatibility layer for Windows. It lets you run a real Linux environment directly inside Windows, complete with an actual Linux kernel.
You can use it to install popular Linux distros like Ubuntu, Debian, or Arch and access them through Windows Terminal or PowerShell. And because WSL2 runs a genuine Linux kernel, it can natively work with Linux file systems like ext4 and others.
All you need to do is attach the physical disk containing your Linux partition directly to WSL2. Once mounted inside the Linux environment, the files become accessible to Windows using WSL’s built-in filesystem integration layer.
Now, you can browse your Linux files from the WSL terminal if you want, but the real advantage is that they also become accessible through Windows File Explorer. This means you can drag and drop files between your Windows and Linux partitions using the normal Windows interface—no rebooting, terminal gymnastics, or third-party apps required.
This is the one Windows feature that convinced me I don’t need Linux
I’ve tried to make Linux my daily OS, but I keep coming back to Windows. Here’s what still pulls me back, even when Linux does some things better.
How to mount your Linux partition to your Windows PC
It’ll barely take you 10 minutes
Here’s a step-by-step guide to mounting your Linux partition in Windows so you can browse and interact with your Linux files directly from the Windows File Explorer.
Step 1: Find your drive
Press Win+X to open the Power User menu and select Terminal (Admin). Then run the following command:
Get-CimInstance -ClassName Win32_DiskDrive | Select-Object DeviceID, Model, Size
This lists every physical disk in your system with its model name, size, and a DeviceID that looks like \\.\PHYSICALDRIVE0. Find your Linux drive in the list (the model name and size make it easy to spot) and note its DeviceID.
Step 2: Attach the drive to WSL
Still in the admin PowerShell window, run:
wsl --mount \\.\PHYSICALDRIVE0 --bare #replace PHYSICALDRIVE0 with whichever disk houses your Linux partition
Replace “PHYSICALDRIVE0” with the correct disk number from the previous step. This command attaches the physical disk directly to WSL2 without automatically mounting its partitions.
- Storage capacity
-
1TB
- Hardware Interface
-
PCIe 4.0
The 990 PRO is a fast, power-efficient, and reliable M.2 SSD from Samsung that will give a storage boost to anything from your gaming desktop to your laptop or even a PS5. You can even choose the RGB heatsink version for extra cooling power and a bit of bling.
Step 3: See what’s on the drive
Open a regular Windows Terminal (not admin), enter wsl to enter your Linux environment, and run:
lsblk -f
This lists all block devices visible to WSL, including the disk you just attached, along with each partition’s filesystem type and label. You’re looking for entries like sda, sdb, and their partitions (sda1, sda2, and so on). Identify the partition containing the Linux files you want to access. From here, you can either mount all the partitions or just the one that contains the Linux files you wish to access.
Step 4: Mount the partition you want
The exact command to mount your Linux partition will depend on the filesystem on your Linux distro. For ext4 partitions—common on Ubuntu, Debian, Mint, and many others—run the following commands back to back:
sudo mkdir -p /mnt/wsl/mylinux #creates the folder you're mounting to
sudo mount -t ext4 /dev/sda1 /mnt/wsl/mylinux #mounts the partition to the newly created folder
The first command creates a mount directory, while the second mounts the partition to it.
Alternatively, if your distro uses Btrfs—the default on Garuda, Fedora, openSUSE, and others—it’s nearly the same, except Btrfs uses subvolumes, so you may need to specify which subvolume to mount.
sudo mkdir -p /mnt/wsl/mylinux #creates the folder you're mounting to
sudo mount -t btrfs -o subvol=@ /dev/sda1 /mnt/wsl/mylinux #mounts the partition to the newly created folder
The root subvolume is typically @ and the home subvolume is @home. That said, depending on your distro’s layout, the subvolume name may differ.
Step 5: Access your Linux files through the File Explorer
Now it’s time for the payoff. Open File Explorer and type this into the address bar:
\\wsl$
This opens a special Windows network-style namespace that exposes WSL2 Linux filesystems to Windows. You’ll see all the Linux distros you’ve installed using WSL here. For example, I see Ubuntu.
Open the folder containing the WSL distro you used to mount your Linux partition, and you’ll see that distro’s entire filesystem. All you need to do now is locate the mnt directory, open it, and inside you’ll find the Linux partition you just mounted. From here, you can browse files, open them, copy them to your Windows drive, or drag files in the other direction.
The one catch worth knowing is that these mounts don’t persist after a system reboot. If you restart Windows, you’ll need to repeat the attach and mount process. That’s annoying if you do this regularly, which is exactly what the next section is for.
Automate the mounts so you don’t repeat yourself
One scheduled task and you never do this again
If you want the Linux partition to mount every time you log into Windows, you can create a scheduled task that automatically runs the wsl –mount commands. Simply open the Terminal (Admin) like before and run the following command:
$action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument '-WindowStyle Hidden -Command "wsl --mount \\.\PHYSICALDRIVE0 --bare; wsl -- bash -c \"sudo mkdir -p /mnt/wsl/mylinux && sudo mount -t btrfs -o subvol=@ /dev/sdc5 /mnt/wsl/mylinux\""'
Replace the drive number, filesystem type, partition path, and mount location with the values you used earlier in the guide. Don’t blindly copy and paste the example command above, or you’ll either mount the wrong partition or trigger an error.
Once that’s done, enter the following commands back to back:
$trigger = New-ScheduledTaskTrigger -AtLogOn
Register-ScheduledTask -TaskName "MountLinuxDrives" -Action $action -Trigger $trigger -RunLevel Highest -Force
And that’s it—you have successfully created a scheduled task that will automatically run the mount script at login, so you always have access to your Linux partition while you’re working inside Windows.
If you ever want to remove the scheduled task, just run this command:
Unregister-ScheduledTask -TaskName "MountLinuxDrives" -Confirm:$false
Task Scheduler for Beginners: How to Automate Windows Maintenance and More
Set it and forget it with task scheduler!
Dual-boot setups just got a lot more seamless
There you have it: a clean and fully native way to interact with your Linux partition from your Windows system. Your Linux drive shows up in File Explorer, behaves like any other drive, and lets you seamlessly shuffle files around between both worlds.
7 Things Nobody Tells You About Dual Booting Linux and Windows
Truths about dual booting I learned the hard way.


