The nocase ntfs3 mount option seems to be incorrectly registered and requires passing nonocase. It seems this is because it was registered like fsparam_flag_no("nocase", Opt_nocase) It is reported correctly in mtab because ntfs_show_options seems correct. If you do go ahead and add nonocase to your mount options, there's some interesting behavior. It feels a bit random, but here's one surprising sequence of commands: # mount -t ntfs3 -o nonocase /dev/nvme0n1p3 /mnt # ls /mnt/ars/build/CMakeCacHe.txt /mnt/ars/build/CMakeCacHe.txt # ls /mnt/program\ files\llvm\bin\clang.exe ls: cannot access '/mnt/program filesllvmbinclang.exe': No such file or directory # ls /mnt/program\ files/llvm/bin/clang.exe ls: cannot access '/mnt/program files/llvm/bin/clang.exe': No such file or directory # ls /mnt/Program\ Files/LLVM/bin/clang.exe '/mnt/Program Files/LLVM/bin/clang.exe' # ls /mnt/program\ files/llvm/bin/clang.exe '/mnt/program files/llvm/bin/clang.exe' It's tricky to get exact reproduction instructions as if I ran this sequence of events again, it would likely work. Maybe based on something being cached or not? I kept my typos and commands that did work in there as they may be relevant, idk. Again, it's quite random. I discovered this when using my windows boot drive's MSVC install to cross-compile some binaries, which depends on case-insensitive behavior. I was able to compile all my code, but it would often fail out because it could not find a header/library. Using a file search program to find the file (and nothing else!) seems to circumvent the issue, at least until likely some cache is dropped or something like that. Tested against latest linux-ntfs3/devel as of writing (6.7.0-rc4-00028-g622cd3daa8ea) as well as 6.8. Thanks for the time!