Thursday, August 5, 2010

Wanted: A Decent, FOS, Cross Platform, Permission-Less, File-System

This is something I desperately want. Don't get me wrong, I think file system permissions are fantastic (they are one of the many things that make Linux superior to Windows), however one place they can be a true pain is when dealing with removable media. Don't believe me? Format your favorite flash drive to ext4 and enjoy having to change file permissions every time you plug it into a new computer. I use Linux on all my home computers, including my media center. Most of my video files are stored on a external 1.5TB ext4 hardrive, which means whenever I decided to watch movies on my laptop off the drive I have to crack open terminal and run

chown -R jeff /media/Storage/

Which is only a minor inconvenience for someone such as myself. For a new Linux convert (or someone who doesn't want to deal with terminal) this is a huge turn off (maybe even a deal breaker for the operating system).

Oh and then there is the other lovely issue of most Linux file systems not being readable on Windows and OSX. Now, even if you are like myself and only use Linux on all of your personal computers - you are aware that the rest of the world does not work this way. Most times when using a computer that is not your own it will be non-Linux based.

The current solution? Format your drive to FAT32, it is permission-less, cross platform, easily fragments, and almost a decade and a half old. It blows my mind that we are still relying on technology every day that was introduced with Windows 95. In addition to being dated FAT32 is limited to holding files of a maximum of 4gigs in size. Meaning all those Blueray rips and most DVD iso files will not be able to be stored on a partition of this type.

What do you think the reason is that we have not see a decent, FOS, cross platform, permission-less, file-system created to date? It seems like it is something the computing world could truly benefit from having.

~Jeff Hoogland

10 comments:

  1. I know you don't like the idea, but to get around the issue, I format flash drives and external hard drives in NTFS.

    Its not FOSS, but it works.

    ReplyDelete
  2. The writer can change permission mode of his external drive to "777" for read/write that eliminates permissions on connection.

    chmod -R 777 /path-to-drive

    I have used this process for many years without any problems or fuss experienced by article writer.

    ReplyDelete
  3. It's not really what you're asking for, but I use a number of work-arounds:
    - I synchronize the user ID's for various machines in the family ("all over the country"), with all of them belonging to the group "fam" with the same GID all over.
    - As a result we don't encounter the problem; would we anyway, then perhaps there's a solution in using sshfs or mount with different credentials? I seem to remember there's an option there.
    - As for using EXT-formatted media, I carry an EXT-IFS driver with me on the (FAT-)uSD-card in my camera which is usually at hand.

    ReplyDelete
  4. The cross platform is the killer. I am sure we could do something good for Linux, but Windows is very limited in what file systems it will use, so we are stuck with FAT32.

    ReplyDelete
  5. I think we would need one more thing:

    NOEXEC

    Perhaps a flag in the linux kernel to force this filesystem to mount as noexec, or to default as noexec, or perhaps require an explicit remount to drop the noexec option.

    Else, this opens a potential vector for viruses and malware.

    ReplyDelete
  6. simple, formats, be them file system or file types, are what makes a platform a platform. If you control the format, everyone needs to come to you for access. This especially now that one can patent aspects of a format, and use the threat of lawsuits to make others comply to your terms.

    I think perhaps the closest we have right now is UDF, but i am unsure if it will ever officially move beyond optical media. At least windows can read it if it shows up on a HDD i think, but i have no clue about osx.

    ReplyDelete
  7. Try UDF. On flash drives, it's perfect. It has support for some advanced features, but it's pretty cross platform and an open standard. Furthermore, having formatted my USB stick UDF, I can now transfer a file whose size is greater than 4GB across Mac OS X, Windows 7 and XP and Linux.

    I have not managed to get external disks (as opposed to removable media) to mount properly in Windows, but Mac OS X and Linux see whole disk UDF filesystems properly.

    ReplyDelete
  8. I was just coming here to mention UDF as well, but I see I'm not the first.

    I haven't tested extensively, but I THINK the trick to getting Windows to mount UDF disks properly was A)512-byte blocks and B)format the entire device, not a partition.

    I know I've done this and gotten windows, mac, and Linux to all mount the drive and use it.

    I wish more devices would support it. I'm slightly disgusted that not even Android devices support anything but FAT32 on their SD cards.

    ReplyDelete
  9. http://fs-driver.org/

    -Fen

    ReplyDelete
  10. You said: "This is something I desperately want. Don't get me wrong, I think file system permissions are fantastic (they are one of the many things that make Linux superior to Windows), however one place they can be a true pain is when dealing with removable media."

    Microsoft says:
    "NTFS has always supported security, which lets an administrator specify which users can and can't access individual files and directories. In pre-Win2K NTFS, every file and directory stores its security descriptor in its own security attribute. In most cases, administrators apply the same security settings to an entire directory tree, which results in duplication of security descriptors across all the files and subdirectories to which the settings apply. This duplication can intensively utilize disk space in multiuser environments, such as Win2K Server Terminal Services and NT Server 4.0, Terminal Server Edition (WTS), in which security descriptors might contain entries for multiple accounts. NTFS5 optimizes disk utilization for security descriptors by using a central metadata file named $Secure to store only one instance of each security descriptor on a volume."

    In short: NTFS supports ACLs since Windows NT 3.51. And as far as I understood more used and more capable than Linux ACLs (ACLs are way more flexible than the default unix rights scheme)
    And I as an Linux Administrator have to say that the support for ACLs is somehow better in NTFS than in Linux Filesystems. Even if there is a way to use ACLs it doesn't look widely supported to me.

    By the way: found this page looking for udf vs fat. obviously nobody really consideres this for using instead of fat because of microsoft incompatiblity? If they would have a more open standard for what they do they would make the world soo much easier...

    ReplyDelete