Linux Disk Auto-Detector & Windows Folder Projection VFS (Ext2/3/4) with Read-Only Safety Protection
See the codeA 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).
PhysicalDrive0 .. PhysicalDriveN).WM_DEVICECHANGE device interface hooks./home, Linux Root (x86_64, arm64, x86), /srv, /var, and user data partitions./boot, Linux Swap, Microsoft Reserved (MSR), Microsoft Recovery.C:\LinuxDisks\Disk<N>_Part<M> using the Windows Projected File System.GENERIC_READ mode with FILE_SHARE_READ | FILE_SHARE_WRITE.FILE_ATTRIBUTE_READONLY.ERROR_ACCESS_DENIED).Linux2Win provides an integrated Windows Setup Wizard (linux2win_setup.exe):
C:\LinuxDisks.uninstall.exe.# Scan all physical drives and classify partitions (shows data vs excluded boot/swap partitions)
.\linux2win.exe scan
# Start real-time hotplug monitor (detects USB / drive insertion and removal)
.\linux2win.exe monitor
# Auto-mount all detected Linux data partitions to Windows folders
.\linux2win.exe auto
# Mount a specific Linux data partition as a Windows folder via ProjFS
.\linux2win.exe mount <disk_index> <partition_number> [target_folder]
# Example:
.\linux2win.exe mount 1 2 C:\LinuxDisks\Drive1_Part2
# List directory contents on a Linux partition
.\linux2win.exe ls <disk_index> <partition_number> [path]
# Example:
.\linux2win.exe ls 1 2 /home/user
# Display contents of a file on Linux partition
.\linux2win.exe cat <disk_index> <partition_number> <file_path>
# Safely copy/export a file or folder from Linux partition to Windows
.\linux2win.exe export <disk_index> <partition_number> <linux_path> <windows_target_dir>
# Example:
.\linux2win.exe export 1 2 /etc/fstab C:\Users\YourUser\Desktop
# Clone the repository
git clone https://github.com/APS-PPR-2016/Linux2Win.git
cd Linux2Win
# Configure with MSVC 2022
cmake -B build -G "Visual Studio 17 2022" -A x64
# Build Release binaries
cmake --build build --config Release
# Run automated unit tests
cd build
ctest -C Release --output-on-failure
# Package ZIP distribution
cpack -C Release -G ZIP
If you find Linux2Win useful, please consider supporting the project:
This project is licensed under the MIT License.
1 commits
C++
97.7%
CMake
2.3%
Linux Disk Auto-Detector & Windows Folder Projection VFS (Ext2/3/4) with Read-Only Safety Protection
See the codeA 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).
PhysicalDrive0 .. PhysicalDriveN).WM_DEVICECHANGE device interface hooks./home, Linux Root (x86_64, arm64, x86), /srv, /var, and user data partitions./boot, Linux Swap, Microsoft Reserved (MSR), Microsoft Recovery.C:\LinuxDisks\Disk<N>_Part<M> using the Windows Projected File System.GENERIC_READ mode with FILE_SHARE_READ | FILE_SHARE_WRITE.FILE_ATTRIBUTE_READONLY.ERROR_ACCESS_DENIED).Linux2Win provides an integrated Windows Setup Wizard (linux2win_setup.exe):
C:\LinuxDisks.uninstall.exe.# Scan all physical drives and classify partitions (shows data vs excluded boot/swap partitions)
.\linux2win.exe scan
# Start real-time hotplug monitor (detects USB / drive insertion and removal)
.\linux2win.exe monitor
# Auto-mount all detected Linux data partitions to Windows folders
.\linux2win.exe auto
# Mount a specific Linux data partition as a Windows folder via ProjFS
.\linux2win.exe mount <disk_index> <partition_number> [target_folder]
# Example:
.\linux2win.exe mount 1 2 C:\LinuxDisks\Drive1_Part2
# List directory contents on a Linux partition
.\linux2win.exe ls <disk_index> <partition_number> [path]
# Example:
.\linux2win.exe ls 1 2 /home/user
# Display contents of a file on Linux partition
.\linux2win.exe cat <disk_index> <partition_number> <file_path>
# Safely copy/export a file or folder from Linux partition to Windows
.\linux2win.exe export <disk_index> <partition_number> <linux_path> <windows_target_dir>
# Example:
.\linux2win.exe export 1 2 /etc/fstab C:\Users\YourUser\Desktop
# Clone the repository
git clone https://github.com/APS-PPR-2016/Linux2Win.git
cd Linux2Win
# Configure with MSVC 2022
cmake -B build -G "Visual Studio 17 2022" -A x64
# Build Release binaries
cmake --build build --config Release
# Run automated unit tests
cd build
ctest -C Release --output-on-failure
# Package ZIP distribution
cpack -C Release -G ZIP
If you find Linux2Win useful, please consider supporting the project:
This project is licensed under the MIT License.
1 commits
C++
97.7%
CMake
2.3%