Hibernated Windows partitions are locked by the NTFS driver to preserve system state, which causes EndeavourOS to mount them as read-only or refuse access entirely. To recover full read-write access without data loss, you must disable Fast Startup in Windows and ensure hibernation is turned off before switching to Linux. This prevents the NTFS3 or ntfs-3g drivers from detecting a "dirty" volume that requires Windows-specific recovery tools.
The Root Cause of Locked Partitions
When you shut down or hibernate Windows 10, it does not always release all resources on the disk. Modern Windows versions enable a feature called Fast Startup, which is technically a hybrid shutdown. Instead of fully powering off the kernel, Windows saves the core session state to the hibernation file (hiberfil.sys) on the system partition. Additionally, if you explicitly chose "Hibernate" from the power menu, the entire user session is saved.
In a dual-boot environment with EndeavourOS (Arch-based), the Linux kernel uses either the open-source ntfs3 driver or the older ntfs-3g FUSE driver to access Windows partitions. Both drivers are designed to protect data integrity. If they detect that the Windows filesystem is in an inconsistent state due to an incomplete shutdown or active hibernation, they will mount the partition as read-only. Attempting to write to this partition can corrupt the Windows registry or user files. Therefore, the primary goal is to ensure Windows performs a complete shutdown before booting into Linux.
Disabling Fast Startup and Hibernation in Windows
To resolve the locking issue permanently, you need to adjust two specific settings within the Windows 10 control panel. These changes ensure that when you select "Shut down," the system completely powers off hardware and releases the NTFS lock. First, open the Control Panel and navigate to Hardware and Sound > Power Options. Click on Choose what the power buttons do in the left sidebar. You may need to click Change settings that are currently unavailable to unlock administrative privileges at the top of the window. Locate the setting labeled Turn on fast startup (recommended). Uncheck this box. This forces Windows to perform a traditional cold shutdown rather than a hybrid one. Next, locate the Hibernation section below. If you do not use the hibernation feature in Windows, uncheck Enable hibernation. This removes thehiberfil.sys file and ensures no session data is preserved across reboots. Click Save changes to apply these settings.
It is critical to note that simply restarting Windows is not enough. You must select Shut down from the Start menu. Do not select Restart, as Restart often bypasses the Fast Startup check and behaves like a hybrid shutdown in some Windows versions. After shutting down, wait for the fans to stop completely before switching to your EndeavourOS installation.
Verifying Linux Mount Behavior
Once Windows has been properly shut down, boot into EndeavourOS. Open a terminal and check the status of your Windows partitions. Use the commandlsblk -f to list all block devices and their filesystem types. Identify the Windows partition, which is typically formatted as NTFS.
You can verify if the partition is mounted correctly by checking its permissions. Run mount | grep ntfs. If the partition is mounted with the ro (read-only) flag, the issue persists. If it shows rw (read-write), the problem is resolved. In most modern Arch-based systems, the ntfs3 driver handles this automatically once the Windows lock is released. If you are using an older setup with ntfs-3g, you might need to remount the partition manually using:
sudo umount /dev/sdXN
sudo mount -t ntfs-3g /dev/sdXN /mnt/windows
Replace /dev/sdXN with your actual partition identifier and /mnt/windows with your mount point. If the mount succeeds without errors, you now have full access to move files between operating systems.
Managing Shared Data Safely
With read-write access restored, you can manage files across your dual-boot setup more effectively. However, caution is still required. Avoid storing sensitive Windows credentials or encrypted keys on shared Linux-accessible drives unless necessary. For general file sharing, consider using a separate FAT32 or exFAT partition formatted specifically for cross-platform compatibility, as discussed in our guide on Fix Formatting Partition Fat32 Dual-Boot Linux/Windows SSD/HDD (GPT). This isolates your OS-specific data from shared media, reducing the risk of accidental corruption during boot transitions. If you encounter issues where Windows refuses to shut down cleanly despite these settings, it may be due to background processes or peripheral devices preventing power-off. In such cases, check the Event Viewer in Windows for critical errors logged just before shutdown. Resolving underlying hardware or software conflicts there is essential for maintaining a stable dual-boot environment.Alternative Approaches for File Sharing
If you frequently need to share large files between EndeavourOS and Windows, relying on direct NTFS access can sometimes lead to performance bottlenecks or permission mismatches. An alternative is to create a dedicated ext4 or btrfs partition accessible only by Linux, and use Samba or NFS to share files with Windows over the network. This method keeps the filesystems isolated but allows seamless data exchange. For more insights on optimizing storage usage in dual-boot scenarios, refer to Optimizing File System Usage with SSDs. Another consideration is the health of your SSD. Frequent writes to the same partition from both OSes can impact wear leveling. Ensure that TRIM is enabled in both Windows and Linux to maintain SSD longevity. In EndeavourOS, you can enable periodic TRIM withsudo systemctl enable fstrim.timer. This helps keep your storage performing optimally regardless of how often you switch between operating systems.
Frequently Asked Questions
Why does my Windows partition show as read-only in Linux?
This happens because Windows did not shut down completely, leaving the NTFS filesystem in a "dirty" state to preserve hibernation data. Linux mounts it read-only to prevent data corruption until Windows resolves the inconsistency.
Can I use hibernation in Windows while dual-booting?
No, it is highly discouraged. Hibernation locks the partition exclusively for Windows. If you boot into Linux while Windows is hibernated, you risk corrupting the Windows file system or losing data saved in the hibernation file.
How do I check if Fast Startup is enabled in Windows?
Open the Control Panel, go to Power Options, click "Choose what the power buttons do," and look for the "Turn on fast startup" checkbox. If it is checked, Fast Startup is active.
What should I do if Windows won't shut down completely?
Check for running applications or pending updates that might be blocking shutdown. You can also try running shutdown /s /t 0 in the Windows Command Prompt to force a immediate shutdown.
Is it safe to delete the hiberfil.sys file manually?
Yes, but only after disabling hibernation in Windows settings. Deleting it manually while hibernation is enabled will cause Windows to recreate it upon next boot, defeating the purpose of freeing up space.