cd /news/developer-tools/show-hn-linux2win-auto-detect-linux-… · home topics developer-tools article
[ARTICLE · art-135767] src=github.com ↗ pub= topic=developer-tools verified=true sentiment=· neutral

Show HN:Linux2Win Auto-detect Linux disks, project Ext2/3/4 as Windows folders

A developer released Linux2Win, a C++20/CMake tool that auto-detects Linux disks and USB drives on Windows and projects their Ext2/3/4 data partitions as native Windows folders via the Windows Projected File System (ProjFS). The tool mounts partitions read-only under C:\LinuxDisks\Disk<N>_Part<M>, excludes EFI System Partitions, BIOS Boot, /boot, swap, Microsoft Reserved and Microsoft Recovery partitions, and requires Visual Studio 2022, CMake 3.20+, and Windows 10 (1809+) or Windows 11.

read3 min views2 publishedSep 21, 2026
Show HN:Linux2Win Auto-detect Linux disks, project Ext2/3/4 as Windows folders
Image: Michielbdejong (auto-discovered)

A modern, high-performance C++20 / CMake solution that automatically detects Linux disks & USBs (when inserted or already present), validates and parses Linux data partitions (Ext2/3/4), strictly excludes boot/system/swap partitions, protects write safety with read-only enforcement, and projects data partitions as native Windows folders using Windows Projected File System (ProjFS).

  1. Automatic Disk & Hotplug Monitoring :
  • Detects all existing physical drives (PhysicalDrive0 ..PhysicalDriveN ).
  • Listens in real-time for USB and external disk insertion and removal via Win32 WM_DEVICECHANGE device interface hooks.
  1. Detects all existing physical drives (
  2. Strict Data-Only Partition Filtering :
  • Automatically inspects GPT and MBR partition tables.
  • Allowed Data Partitions : Linux Filesystem Data, Linux/home , Linux Root (x86_64 ,arm64 ,x86 ),/srv ,/var , and user data partitions.
  • Excluded Partitions : EFI System Partitions (ESP), BIOS Boot, Linux/boot , Linux Swap, Microsoft Reserved (MSR), Microsoft Recovery.
  1. Zero-Dependency Ext2/Ext3/Ext4 Engine :
  • Built-in, self-contained parser supporting 64-bit block addressing, extents trees, directory hash/linear entries, fast & regular symlinks, and inode table parsing.
  1. Native Windows Explorer Integration (ProjFS) :
  • Projects the Linux filesystem directly into C:\LinuxDisks\Disk<N>_Part<M> using the Windows Projected File System.
  • Standard Windows Explorer operations: double-click to open files, view properties, drag-and-drop, and copy files/folders directly to Windows drives.
  1. Projects the Linux filesystem directly into
  2. Enforced Read-Only Safety :
  • Drive handles opened strictly in GENERIC_READ mode withFILE_SHARE_READ | FILE_SHARE_WRITE .
  • File attributes tagged with FILE_ATTRIBUTE_READONLY .
  • All write, modify, truncate, and delete operations are blocked (ERROR_ACCESS_DENIED ).
  1. Drive handles opened strictly in
  2. Memory-Resident Background Daemon & System Tray :
  • Runs quietly in the notification area with a sleek context menu.
  • Interactive permission prompt asking user consent for Windows startup.
  • Desktop balloon notifications when Linux partitions are mounted or unmounted.

Linux2Win provides an integrated Windows Setup Wizard (linux2win_setup.exe):

  1. Interactive Startup Permission : Asks for permission to load on Windows startup in memory-resident background mode.
  2. Explorer Shortcuts : Automatically creates desktop and Start Menu shortcuts toC:\LinuxDisks .
  3. ProjFS Feature Activator : Enables the Windows Projected File System feature if not active.
  4. Clean Uninstallation : Registers with WindowsAdd or Remove Programs and generatesuninstall.exe .
.\linux2win.exe scan

.\linux2win.exe monitor

.\linux2win.exe auto

.\linux2win.exe mount <disk_index> <partition_number> [target_folder]
.\linux2win.exe mount 1 2 C:\LinuxDisks\Drive1_Part2

.\linux2win.exe ls <disk_index> <partition_number> [path]
.\linux2win.exe ls 1 2 /home/user

.\linux2win.exe cat <disk_index> <partition_number> <file_path>

.\linux2win.exe export <disk_index> <partition_number> <linux_path> <windows_target_dir>
.\linux2win.exe export 1 2 /etc/fstab C:\Users\YourUser\Desktop
  • Visual Studio 2022 (with MSVC C++20 toolchain)
  • CMake 3.20+
  • Windows 10 (1809+) or Windows 11
git clone https://github.com/APS-PPR-2016/Linux2Win.git
cd Linux2Win

cmake -B build -G "Visual Studio 17 2022" -A x64

cmake --build build --config Release

cd build
ctest -C Release --output-on-failure

cpack -C Release -G ZIP

If you find Linux2Win useful, please consider supporting the project:

This project is licensed under the MIT License.

── more in #developer-tools 4 stories · sorted by recency
── more on @linux2win 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/show-hn-linux2win-au…] indexed:0 read:3min 2026-09-21 ·