Slashdot Mirror


Plethora of New User Space Filesystems For Mac OS X

DaringDan writes "As part of the recent MacFUSE 2.0 release Amit Singh has added support for an insane number of filesystems on the Mac. This video from Google and this blog post pretty much explain everything in detail but to sum-up Singh has written a new filesystem called AncientFS which lets you mount a ton of UNIX file formats starting from the very first version of UNIX. Even more interesting is that they have also taken Linux kernel implementations of filesystems like ufs, sysv-fs, minix-fs and made them work in user-space on the Mac, which means its now possible to read disks from OSes like FreeBSD, Solaris and NeXT on OS X. ext2/ext3 don't seem to be on the list but apparently the source for everything is provided, so hopefully some enterprising soul can apply the same techniques to ext2. One of their demos even has the old UNIX kernel compiled directly on the Mac through the original PDP C compiler by somehow executing the PDP binaries on OS X!"

44 of 225 comments (clear)

  1. Looking forward to this! by Pope · · Score: 3, Interesting

    I still have the old Intel Rhapsody DR2 disks lying around, and would love to see if this can read the filesystem. It's kind of fun playing around it what was NeXT with a MacOS interface, and at times I almost would rather have it than what OS X became, if only to eliminate the stupid gimmicks.

    --
    It doesn't mean much now, it's built for the future.
  2. Sounds great. by solios · · Score: 4, Interesting

    Especially if I ever need to recover one of my linux box's drives from a Mac.

    But really, all I want for christmas is NTFS write support.

    1. Re:Sounds great. by DarthStrydre · · Score: 5, Informative

      NTFS-3G which works with MacFUSE has full NTFS write support. It is, however, much slower at reading than the native NTFS read-only driver.

    2. Re:Sounds great. by Anonymous Coward · · Score: 2, Funny

      But really, all I want for christmas is NTFS write support.

      Santa Jobs says you've been naughty. COAL filesystem support for you this year!

    3. Re:Sounds great. by JonLatane · · Score: 2, Informative

      Merry Christmas. NTFS-3G is more than fast enough to read documents from your Windows partitions. The only time its slower speeds will really be a noticeable problem, in my experience, is if you run OS X applications from your NTFS disk. But why would you keep your OS X applications on an NTFS volume?

    4. Re:Sounds great. by mrsteveman1 · · Score: 2, Funny

      At least COAL won't murder your wife

    5. Re:Sounds great. by MMC+Monster · · Score: 2, Interesting

      So why can't you use the native NTFS read-only driver for reads and the NTFS-3G driver for writes?

      --
      Help! I'm a slashdot refugee.
    6. Re:Sounds great. by BrentH · · Score: 3, Informative

      Because he hasnt tried the ublio builds of the nfts-3g plugin: it read and writes with comparable speed to a native filesystems (http://www.csamuel.org/2007/04/25/comparing-ntfs-3g-to-zfs-fuse-for-fuse-performance). I can read/write with 30MB/s on an external USB drive.

    7. Re:Sounds great. by BrentH · · Score: 2, Informative

      That hasn't been unstable for a long time. Been using it for over a year now on a regular basis, for backups, and I havn't ever had any problems with it. I also havn't actually heard of reports of breakage for over a year, and many reports of succes. It's what Linux ntfs-3g uses too, and the stability/corruption issues just aren't there.

      NTFS-3g is just as stable and performant as a native fs, on both OSX and Linux. Ubuntu even supports it officially with Wubi now.

  3. ext3 by fracai · · Score: 5, Insightful

    What is needed is an ext3 implementation. There've been projects to bring ext2/3 to the Mac, but so far they've been incomplete and abandoned.

    I'm actually pretty surprised that this hasn't been properly implemented already.

    --
    -- i am jack's amusing sig file
  4. Re:News? by mrsteveman1 · · Score: 5, Insightful

    Because slashdot isn't a public service announcement system and macfuse is more interesting?

  5. Re:News? by Pope · · Score: 2, Insightful

    I searched on that phrase and found a note on Apple's site with a Last Modified date of October 30, 2008: http://support.apple.com/kb/TS1545

    Heck, here's one that makes reference to Mac OS 9 and OS X 10.2.4: http://support.apple.com/kb/TS1411

    Doesn't sound like it's even remotely new, yet alone being new news.

    --
    It doesn't mean much now, it's built for the future.
  6. Re:News? by neokushan · · Score: 3, Insightful

    I'd say that what's interesting and what's not interesting is all a matter of opinion, but it stands to reason that if you own a Mac and would be interested in this software, you would also be interested in knowing that a recently released update from Apple is causing major system trouble.

    --
    +1 IDisagreeSoHeMustBeATrollOrAnAstroturferOrAShill
  7. Because... by mario_grgic · · Score: 3, Insightful

    Some users installing third party apps that modify their system files, and then apply updates over them have issues is hardly newsworthy.

    --
    As the island of our knowledge grows, so does the shore of our ignorance.
    1. Re:Because... by pla · · Score: 5, Funny

      Some users installing third party apps that modify their system files, and then apply updates over them have issues is hardly newsworthy.

      Riiiiiight... Because a Linux-heavy audience would never even consider violating the sanctity of those spoooooky "system files" of which you speak...

    2. Re:Because... by MightyYar · · Score: 3, Insightful

      Try that with Ubuntu, upgrade, and then see what happens... similar :) I know, I've been there...

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    3. Re:Because... by profplump · · Score: 2, Insightful

      In my experience, no, they wouldn't.

      Most linux users -- even talented ones -- rarely do anything to their system files other than apply vendor-created packages. For most people the idea of replacing system libraries with non-standard versions is almost unthinkable; if they wanted some other functionality they'd switch distros, not replace standard system files.

  8. Re:ext2 on Mac by mrsteveman1 · · Score: 3, Insightful

    If by "works" you mean "i have a 10.3 panther PPC machine and need non-journaling access to an ext3 partition", or "i have a tiger/leopard Intel machine and don't care if my machine suddenly panics". Those are the choices at the moment.

    It's curious really, this is a filesystem for which the spec is very well known, implementations are available fully open source, and yet here we are with unmaintained and unstable projects that are alpha quality for both OS X and Windows. The drivers for Windows ext2/3 support cause bluescreens under various conditions, so yea those are alpha too.

  9. Re:News? by pizzach · · Score: 2

    I think it's more luck. You can bitch about luck if you want, but there is not much you can do about it. I know I haven't heard anything about the blue screen problem yet. Did you try submitting it? The other thing is that MacFuse is an interesting open source project that makes Linux heads' eyes turn round like plates and mouths start dueling. Given that many times when a linux related article is shown, slashdot usually ends up ending the alticle with a disclaimer stating that they are owned by linux.com (or was it linux.org ?), I don't think that an article like this making it through first is all that strange. The article would more likely catch the eyes of the editors. Well that's my guess anywho. :-)

    --
    Once you start despising the jerks, you become one.
  10. Re:So what? by inKubus · · Score: 4, Insightful

    External hard drives, for one. I have some external drives I use on Linux boxes for various things. All of these boxes are up in an air conditioned server room. On occasion I need to get one file off onto my workstation, which is a Mac. Currently I have to walk it up to server room, connect it up, go back down, shell into the machine and mount it (if it's not an automounted drive), then somehow get the file out of the linux box to my Mac (scp or something). If I could just mount it on my workstation, it would save a lot of time.

    Additionally, there are occasions where a recovery process needs to be run on a bad drive. The same procedure applies. It's mainly a convenience thing, but it would make the Mac into a much more useful tool for admins. I can definitely see the usefulness for FAT/NTFS in a desktop support environment.

    Naturally you can always comment "Why use a Mac in the first place when you could have a linux desktop?" but I would reply that I don't have a choice, the CEO only buys Macs for workstations. So I have to use what I've got. This would make my life easier.

    --
    Cool! Amazing Toys.
  11. Re:News? by AdmiralXyz · · Score: 2, Insightful

    Slashdot reports on useful software for OS X: "What the hell? Why aren't you paying attention to $RANDOM_BUG_AFFECTING_1%_OF_MAC_USERS."

    Slashdot reports on a random bug in the Linux kernel: "What the hell? Why aren't you reporting on all the great free software for Linux? Are you trying to give people the wrong idea?"

    --
    Dislike the Electoral College? Lobby your state to join the National Popular Vote Interstate Compact.
  12. Sure by mario_grgic · · Score: 5, Insightful

    You most certainly can if you want to. But if you have system files A and B and you modify B and later system update modifies A to call something in B that you changed the behavior of, then don't blame the system update.

    That's all I'm saying.

    --
    As the island of our knowledge grows, so does the shore of our ignorance.
  13. FUSE for Windows by Cyberax · · Score: 2, Informative

    Also, it seems to be a good time to plug Dokan and my FUSE4Win project :)

    There's a wonderful project named "Dokan" (http://dokan-dev.net/en/), it makes posssible to write user-space filesystem in Windows.

    I've adapted FUSE interface for it, so it's possible to use (almost) unmodified FUSE filesystems in Windows: http://hg.sharesource.org/fuse4win

    Currently, SSHFS works fine. NTFS3g also works :)

  14. cool, now lets make in run on linux by John+Sokol · · Score: 2, Flamebait

    Too bad it for the mac, lets make it work under Ubuntu so it can be useful to those of us who don't want to overpay for our hardware.

    --
    I am always doing that which I can not do, in order that I may learn how to do it. - Pablo Picasso
    1. Re:cool, now lets make in run on linux by MightyYar · · Score: 3, Funny

      You're supposed to flaimebait anonymously.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
  15. Re:News? by MightyYar · · Score: 2, Insightful

    From a geek standpoint, one is a cool project and the other a mundane bit of troubleshooting.

    --
    W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
  16. Re:Every filesystem! Except the ones that matter.. by abigor · · Score: 4, Informative

    No, NTFS has support via NTFS3G. The other popular file system, FAT, is already supported natively.

  17. A Plethora? by Ignatius+D'Lusional · · Score: 5, Funny

    Jefe: I have put many beautiful new user space filesystems in the Mac OS X, each of them filled with little suprises.
    El Guapo: Many new user space filesystems?
    Jefe: Oh yes, many!
    El Guapo: Would you say I have a plethora of new user space filesystems?
    Jefe: A what?
    El Guapo: A *plethora*.
    Jefe: Oh yes, you have a plethora.
    El Guapo: Jefe, what is a plethora?
    Jefe: Why, El Guapo?
    El Guapo: Well, you told me I have a plethora. And I just would like to know if you know what a plethora is. I would not like to think that a person would tell someone he has a plethora, and then find out that that person has *no idea* what it means to have a plethora.
    Jefe: Forgive me, El Guapo. I know that I, Jefe, do not have your superior intellect and education. But could it be that once again, you are angry at something else, and are looking to take it out on me?

  18. Re:News? by kestasjk · · Score: 4, Funny

    From my impression an Apple update causing major system trouble really isn't news.

    --
    // MD_Update(&m,buf,j);
  19. Re:News? by falcon5768 · · Score: 4, Insightful

    you mean BARELY causing? I am sorry but a hundred or so postings when there are over a million OS 10.5 users out there is NOT in my mind major trouble.

    --

    "Slashdot, where telling the truth is overrated but lying is insightful."

  20. FUSE vs. FST by HTH+NE1 · · Score: 2, Interesting

    Apple's GS/OS had FSTs (File System Translators) that allowed that operating system to access HFS, ProDOS, DOS 3.3, and FAT volumes. How does FUSE compare in function to GS/OS's FSTs? You know, apart from working with non-obsolete hardware.

    --
    Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
    1. Re:FUSE vs. FST by seanadams.com · · Score: 2, Informative

      Apple's GS/OS had FSTs (File System Translators) that allowed that operating system to access HFS, ProDOS, DOS 3.3, and FAT volumes. How does FUSE compare in function to GS/OS's FSTs? You know, apart from working with non-obsolete hardware.

      Fuse is not a file system or even a translation layer per se. It's just a way to let you run a filesystem in userspace, instead of inside the kernel where it would normally reside.

      This is slower, but has many benefits including easy development/debugging, not requiring access to kernel sources or rebuilding of the kernel, and easy portability of these filesystems to run atop different host OSes. It also gives the "guest" file system access to all the features of userland, making it easy to, for example, launch a process to convert a file or establish a TCP connection somewhere.

      GS/OS was very primitive by todays standards and did not even have a "user space" to speak of - there was no preemptive multitasking or protected memory, so FST was not some significant architectural paradigm - just that the OS knew how to read more than one kind of disk. It's not really comparable to fuse, although it is comparable to some of the things you can do with fuse.

      Look around for other projects that use fuse. There's some interesting stuff you can do with it. To give you an idea, years ago somebody did a filesystem which would make a bunch of audio files in a variety of formats all appear to be .MP3 files. When you view the directories all that's happening is the extensions are being changed, but then when you open one, he would transparently launch a decoder in the background to convert the file.

      You could also do things like making a remote FTP site appear as a normal file system... all kinds of stuff.

  21. Re:News? by FiloEleven · · Score: 2, Insightful

    This isn't a Windows news site either, yet we get tons of stories about Windows Update failures and Windows exploits.

    Your argument is weak, grasshopper.

  22. Since when does ./ post the particulars? by hellfire · · Score: 2, Insightful

    I've seen plenty of stories where Joe hacked this, or John hacked that or Larry came up with this ingenious hack. But since when is slashdot concerned with the details of said hack?

    If your news story is "If you hack your Mac OS X system files and then upgrade, you'll get a blue screen," then that's not news on slashdot. Anyone crowd who is "linux-heavy" should know this and go "duh!", and anyone who is not in that crowd has no idea what that means anyway.

    The news here is not that exists but the details of what a proper OS X hacker might do to avoid getting the blue screen. That type of information properly belongs on a hacker website properly formatted and dedicated to handle this type of information. Slashdot's never handled that kind of hacker detail and I don't believe they intend to, nor should they.

    --

    "All great wisdom is contained in .signature files"

  23. Reiser 4 by doom · · Score: 2, Interesting

    Wasn't this sort of thing the idea behind the original "plug-in" mechanism planned for Reiser 4? I remember being intrigued by the idea of writing file-system customizations in perl, and I was looking forward to playing around with it to see what could be done with it.

    Unfortunately, it appears that the kernel devs don't want to hear about any functionality that doesn't fit in the box of their VFS layer.

    1. Re:Reiser 4 by SanityInAnarchy · · Score: 3, Informative

      I was semi-involved in this -- basically, Reiser4 wanted to make the filesystem pluggable, but in kernel-mode. The idea was that features would be implemented in the filesystem itself -- crypto, compression, files-of-files (for example, instead of suid utilities like passwd, just let me edit /etc/passwd/sanity), metadata-as-files (Unix permissions are a file, or things like foo.mp3/id3/genre)....

      Lots of cool ideas bouncing around, and most of them might work better as FUSE filesystems -- for example, there's no reason id3lib needs to be in the kernel.

      Some of them, it makes sense -- certainly for spinning disks, even moreso for external media, the media is so much slower than the CPU that compression makes sense, but you want to compress on flush, and not before. The part that was cool about that was, from the benchmarks they were getting, performance was actually better with compression turned on, because of how fast the algorithm is, how fast CPUs are, and how slow spinning disks are.

      But if you break down the "plug-in" concept, it was really horribly mis-named and mis-marketed -- it was just an API, like the pluggable IO schedulers were. It's really something that would probably go in the VFS layer -- something Hans had a really difficult time selling; according to his story, the first time he brought up his ideas, they told him to go put it inside his filesystem, not in the VFS, to try it out without making such drastic changes that would affect other filesystems. When he did that, and came back with the so-called "plugin" architecture, they told him that it should have been in the VFS, so that other filesystems could use it, and they refused to merge it.

      Looking at it now, it looks like most of these ideas, and some filesystems currently in the kernel, are better as FUSE filesystems. Better to keep the kernel smaller and more reliable, especially when the performance advantage is minimal -- FUSE will never be the bottleneck for sshfs, for example. Crypto works well enough at the block level (for full-disk crypto). And 20 years from now, we'll have computers so absurdly fast that no one will care about the performance hit of FUSE -- arguably, we're there already.

      But I do still wish that the compression, at least, would be tried, if those benchmarks have any truth to them.

      Anyway -- more directly, you would never have been able to write file-system customizations in Perl, unless Perl was put in the kernel, which would be an atrocity. However, you can write whole filesystems in Perl, Python, Ruby, or pretty much anything you want -- just use FUSE -- and nothing is stopping you from letting a real filesystem handle 90% of that.

      --
      Don't thank God, thank a doctor!
  24. These are mostly read-only by Animats · · Score: 3, Informative

    These are mostly read-only implementations for dealing with archival data. They're not read/write, which is more work to implement and not that useful.

    QNX has had user-space file systems for decades. (It's a microkernel; almost everything is in user space.) Some users wrote file system implementations for weird file systems, like .zip files. Most of the modern QNX file system action is supporting various flash-based file systems and networked file systems.

  25. Re:So what? by againjj · · Score: 3, Interesting

    Naturally you can always comment "Why use a Mac in the first place when you could have a linux desktop?" but I would reply that I don't have a choice, the CEO only buys Macs for workstations. So I have to use what I've got. This would make my life easier.

    And Macs don't run linux?

  26. Re:News? by rmav · · Score: 5, Funny

    Macs are gay.

    Yeah. My macs are gay. But I talked to them, I explained I am hetero, and they never molested me - they never did anything to hurt my feelings. I am tolerant, but not interested in gay relationships. My computers understood that.
    Not that I would ever be interested in having sex with a computer anyway...
    Roberto

  27. Re:News? by Sorthum · · Score: 4, Funny

    Not that I would ever be interested in having sex with a computer anyway...

    Well, SOMEBODY'S in the minority on Slashdot...

  28. Real programmers do bigger on smaller by bradbury · · Score: 3, Interesting

    > "One of their demos even has the old UNIX kernel compiled directly on the Mac
    > through the original PDP C compiler by somehow executing the PDP binaries on OS X!"

    Hmpfh... Circa 1978-79, Forrest Howard and I wrote a PDP-10 simulator that ran on a PDP-11/70 (a 36 bit machine on a 16 bit machine for those not educated in DEC hardware). It was used to recompile the DEC Fortran compiler which was written in Bliss-11. And the Bliss-11 compiler could only be run on a PDP-10. Lacking a PDP-10 (expensive pseudo-mainframe computers in those days) we simply wrote a simulator. It didn't run fast, as I recall the DEC Fortran compiler recompile took several weeks, but it did run.

    Reproducing a PDP-11 sumulator on modern hardware would be relatively trivial, though it would have been much easier on older Macs because it could be argued that the 680X0 architecture was a knockoff of the PDP-11 architecture. Though one could suppose that current era (non-680X0 or non-PowerPC) machines are fast enough that it is a noop. I think the PDP-11 had a 300 ns cycle time and current machines are ~10x faster. Any current machines could easily simulate a '70s era minicomputer (or even most mainframes).

  29. Executing binaries != filesystem by Gothmolly · · Score: 2, Insightful

    How is executing PDP binaries on OSX related to filesystems?

    --
    I want to delete my account but Slashdot doesn't allow it.
  30. Must be rare by Jeremy+Visser · · Score: 3, Informative

    Well, for the last year or so, I have been using NTFS-3G every single day of the week, using it to running my virtual machines stored on a USB hard disk (performance is excellent, by the way -- with Linux's tendency to cache the VM images, Windows guest performance is easily better than running natively off a physical partition).

    At my college, and at home, there are computers with faulty USB connectors. A few times a week, when running a VM, my USB cable will wriggle loose, and the hard disk will disconnect. Yes, while it's running NTFS-3G.

    However, not once in the last 12 months has my NTFS filesystem become corrupted. Not once.

  31. That's why UNIX is important... by master_p · · Score: 2, Insightful

    Someone makes a filesystem in the 70s, and then 30 years later is still accessible...I don't think that's gonna be the case with Windows in 30 years in the future!