16

I dual booted my Windows XP, installing Linux Mint. I found out that when using Linux Mint, I could see and open files installed on Windows XP, but when using Windows XP, I can't see and open files installed on Linux Mint.

Why is that?

Why does Linux recognize Windows but not the other way 'round?

4
  • 23
    Linux gains users by being compatible with windows since most people switch TO linux and have data on NTFS/FAT drives. Microsoft has no reason to add linux filesystem support since most of it's users don't use linux filesystems and it wants people to use it's filesystems.
    – AnnanFay
    Mar 23, 2012 at 3:19
  • 4
    As someone once said "Because no one implemented it. Features start off as unimplemented and only become implemented when people spend effort implementing them: no effort, no feature." Mar 23, 2012 at 11:57
  • 1
    You should perhaps wonder, in the first place, why do you even expect two different systems to be able to understand each other's data. You mention partitions and files, but you end up skipping the issue: filesystems. Windows definitely recognizes the partition, as you're dual-booting. See diskmgmt.msc. The only thing here is that you're asking Windows to understand a filesystem it does not know about, just like you could be asking it to use a device (e.g. a modem) it does not know about.
    – njsg
    Mar 24, 2012 at 11:14
  • @njsg yes when i first installed linux, i believed that linux does not recognize windows and windows does not recognize linux and i didn't see anything wrong with that, but when i saw that linux do recognize windows, that surprised me
    – user
    Mar 24, 2012 at 11:28

7 Answers 7

28

Windows only natively supports the NTFS and FAT (several flavors) file systems (for hard drives/magnetic systems) and CDFS and UDF for optical media, per this article.

To access other file systems, additional drivers/software will be required. As an example, the Ext2 Installable File System For Windows driver is an open source project that supports the Ext2 system.

EDIT: Correct typo - listed "UFS" instead of "UDF" - kudos to @ChrisS for catching the mistake.

3
  • 3
    Note: The driver in your last link will mostly work for ext3 read-only access, and probably won't work at all for ext4 partitions. Mar 23, 2012 at 9:10
  • @ChrisS, you're absolutely right! Made a typo when writing my answer - I'll update my answer.
    – JW8
    Mar 23, 2012 at 18:36
  • 1
    CDFS is not actually a filesystem, but a nickname for different file systems (Joliet, ISO9660, etc) that Windows displays when using CDs and DVDs. Mar 29, 2013 at 0:28
28

Windows does not have native Linux filesystem support (ext3, ext4, zfs, among others). It's as simple as that.

1
  • 1
    I believe you can even say Windows only has built-in support for Windows filesystems (not counting the optical media formats).
    – njsg
    Mar 24, 2012 at 11:15
1

In addition to Windows simply not having support for Linux file systems, Microsoft cannot reasonably take on the responsibility of guaranteeing your data will be safe if they try to support them. For example (and completely hypothetical), say the ext4 team improves performance by recognizing a new ext4 inode format that is not backward compatible. Windows next modifies your data but mixes the old format with the new one, because it doesn't know about the change, and corrupts your data. Who will you blame?

For years, as my memory recalls, the Linux kernel had read-only support for NTFS, and write support was labeled UNSUPPORTED for years after it was introduced. The Linux kernel was obviously very concerned about data integrity until they were confident their NTFS file system support was fully stable and understood. Now imagine how much harder it would be on the kernel team if Windows had 3-5 other filesystems just as popular as NTFS. (Think: ext3-4, XFS, ReiserFS, Btrfs, etc.)

5
  • 4
    When a filesystem in Linux is declared production-ready, its binary on-disk format is fixed. So you shouldn't worry about old/new format.
    – liori
    Mar 23, 2012 at 12:23
  • 11
    This is completely incorrect; the Linux filesystems (unlike NTFS) are well-documented and open source. Should new features be added, the filesystem would add a new option (sparse_super, acl, xattr, etc.) or bump the version and any driver which did not recognize those options or support that version will refuse to mount.
    – MikeyB
    Mar 23, 2012 at 13:08
  • @MikeyB It isn't completely incorrect--it was completely hypothetical as an example as to why Microsoft would be hesitant to even try to support a Linux filesystem. Since all that open source code is GPL, Microsoft couldn't use it anyway (license conflict) and they would have to create and maintain their own flawless implementation. And each time the version number bumps, their user base would demand the same upgrade. All I was trying to say is that it is simply a bad position for them.
    – jimp
    Mar 23, 2012 at 16:29
  • 2
    What I was jumping on was the assertion that the format might just 'magically change' without any sort of versioning in place to guard against this situation. That's not what happens in the real world. Also, while they couldn't use the GPL code directly, there are no barriers to examining the code and making a compatible implementation without violating the GPL. FreeBSD did it - no problem. What it comes down to is: Microsoft doesn't want to do it.
    – MikeyB
    Mar 23, 2012 at 17:23
  • @MikeyB I never meant to suggest it would magically change either. But in the real world, change does happen, backward compatible or disaster-proof by version numbering, and Microsoft wouldn't be included in the discussion without committing resources to it. And when it breaks they would be at fault... We are at least agreeing on one thing: Microsoft doesn't want to do it. :)
    – jimp
    Mar 23, 2012 at 22:01
0

Its just because of the difference in File systems of Windows and Linux systems. Windows does not support the Linux files or file systems.

0

I had the same problem you had. This is because Linux uses ext2/3/4 file systems for its partitions. Windows does not read/write this type of file systems. Just NTFS and FAT. Linux reads/writes on almost any file system.

A solution to this is to install an open-source software/driver that allows you to read and write to ext3 partitions on Windows: ext2fsd

I am using it and it's working, stable and great.

0

Currently there are no Windows Drivers supporting EXT4 filesystem. If you install UBUNTU on EXT2/EXT3 then you can use them to access your files. On the other hand you can have dropbox or something like that to exchange files.

0

Just had to mention, if you really want to have bi-directional shared data from both OS, setup a data partition as NTFS with GParted or some other partitioning tool, and they will (should?) both be available by both OS.

I never did this myself, but I am quite sure it's an easy way to share data between Win/Linux platforms.

Cheers!

1
  • Or FAT. It might work better (every release of NTFS has delayed support in the Linux drivers because they have to hack NTFS).
    – Linuxios
    Mar 30, 2012 at 14:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.