Slashdot Mirror


FUSE Port Brings NTFS Support To OS X

sciurus0 writes "In his session at Macworld on OS X filesytems, Google's Amit Singh announced that he has ported Linux's FUSE module to OS X. The port is called MacFUSE and it is available in source form and as a pre-compiled kernel extension with associated tools. Many FUSE filesystems such as sshfs and ntfs-3g are reported to work."

43 of 150 comments (clear)

  1. GmailFS also by Anonymous Coward · · Score: 5, Informative

    GmailFS should also now be easily supported on Mac OS X using MacFuse.

  2. FUSE for Windows by Cyberax · · Score: 4, Interesting

    I'm writing FUSE for Windows at my spare time (not much of it, unfortunately). Is there anybody who's doing the same?

    1. Re:FUSE for Windows by Cyberax · · Score: 4, Interesting

      Yes, if they don't use any Linux/Unix-specific features. User-space part of FUSE, however, will have be modified (because there's no fork() in Windows).

      Release is FAAAAAAAAR away now, I expect to get something working in 3-4 months.

    2. Re:FUSE for Windows by Tony+Hoyle · · Score: 3, Informative

      Filesystems in Windows are a different animal to what they are in other OS's.. *way* harder. If you ever checkout the ntfsd list you'll see how many odd cases you have to handle because people make this mistake almost daily (oddly enough most of them are trying to do encryption).

    3. Re:FUSE for Windows by dangitman · · Score: 4, Funny

      (because there's no fork() in Windows)

      If there's no fork, then how do you eat your meat (and consequently get the pudding)?

      --
      ... and then they built the supercollider.
    4. Re:FUSE for Windows by odie_q · · Score: 4, Informative

      FUSE is a general Filesystem-in-userspace driver, supporting a long list of filesystems.

      So with FUSE ported, Windows users can also enjoy in-filesystem versioning, seamless ssh integration, RAR files as folders and so on.

      --
      ...ceterum censeo Carthaginem esse delendam.
    5. Re:FUSE for Windows by raynet · · Score: 5, Informative

      Well, FUSE is not NTFS. FUSE allows you to write userspace filesystem modules via stable and fairly simple API. Thus if you had FUSE for Windows, you could add new filesystems to Windows with relative ease. Also you could port the same modules to Mac, Linux and BSD or vice versa.

      --
      - Raynet --> .
    6. Re:FUSE for Windows by Cyberax · · Score: 2, Funny

      Windows developers have to use threads and fibers:)

    7. Re:FUSE for Windows by dal20402 · · Score: 5, Funny

      there's no fork() in Windows

      You don't need to stick a fork() in. It's easy to see that Windows is done.

    8. Re:FUSE for Windows by Foolhardy · · Score: 2, Interesting

      I have thought about porting FUSE in the past, since it'd be a great way to enable lots of filesystems in Windows but haven't gotten out of the planning stage. I'd be very interested in helping to make that happen. I have some experience in writing Windows NT filesystem drivers.

      I don't know how you've planned the userspace, but I'd suggest that you make it NOT dependent on Win32. It'd be much easier to implement features like fork (which Win32 doesn't support, but native processes do). Also, native process programming follows a lot of the same conventions that kernel programming does; the code would be more consistent and lightweight. Besides, it seems unlikely that FUSE would require Win32-specific features.

      Please let me know if you get a source repository up.

    9. Re:FUSE for Windows by TheNetAvenger · · Score: 4, Interesting

      So with FUSE ported, Windows users can also enjoy in-filesystem versioning, seamless ssh integration, RAR files as folders and so on.

      Why is this such a great goal, when FS developers have been trying to meet the basic features of NTFS already...

      NTFS already does journalling, has file versioning (far beyond what any *nix FS does), encyrption, compression, and with Win32, zip and rar integration.

      The trick in writing a FS for Windows isn't so much a NT issue, but how Win32 see the FS and what it expects to be there. This can best be demonstrated with the Unix subsystem on Windows, or how NFS is handled.

      BTW, this is kind of a baited post to see how well people really do understand NTFS and also what they are trying to accomplish.

      For developers interested there are some good resources and help on writing FS for NT, like at: http://www.osronline.com/cf.cfm?PageURL=showlists. CFM?list=NTFSD

      Take Care...

    10. Re:FUSE for Windows by ProfessionalCookie · · Score: 3, Funny

      I only dream of a world with No Fork-in Windows

  3. Re:FUSE? by Ash-Fox · · Score: 4, Informative
    Can anone point out what 'FUSE' is?
    Runs filesystems in userspace.
    --
    Change is certain; progress is not obligatory.
  4. Re:FUSE? by Zontar+The+Mindless · · Score: 4, Informative
    Can anone point out what 'FUSE' is?---I know i am lazy, no need to state the obvious.


    Try http://fuse.sourceforge.net/ - basically, when I hear of an Open Source project I've not heard of before, I just go to "nameofprojectgoeshere.sourceforge.net", and (more often than not) there it is. And there it was. :)

    --
    Il n'y a pas de Planet B.
  5. The creator of FUSE... by little1973 · · Score: 4, Informative

    ...Miklos Szeredi was offered a job by SUSE Labs, Prague, which he accepted. His job will be kernel developement for SUSE (all GPL, of course). IIRC, he can work on FUSE in 10% of his work time.

    --
    Government cannot make man richer, but it can make him poorer. - Ludwig von Mises
    1. Re:The creator of FUSE... by TeknoHog · · Score: 3, Funny

      So, FUSE will now fuse with SUSE?-)

      But seriously, I wonder how this relates to the SUSE-Novell-Microsoft connections... That's a nice implementation of NTFS you got there. It would be a shame if something happened to it.

      --
      Escher was the first MC and Giger invented the HR department.
    2. Re:The creator of FUSE... by kobaz · · Score: 2, Informative

      You did great up until you misspelled lose :(

      --

      The goal of computer science is to build something that will last at least until we've finished building it.
  6. Precompiled read/write NTFS packages by irgu · · Score: 5, Informative

    The original NTFS-3G source code doesn't compile on Mac OS X without some changes but the MacFUSE and NTFS-3G precompiled packages are available from IUseThis.

  7. Great for dual booting? by Max+Romantschuk · · Score: 2, Interesting

    Boot camp users, care to comment on the implications?

    --
    .: Max Romantschuk :: http://max.romantschuk.fi/
    1. Re:Great for dual booting? by LEgregius · · Score: 2, Informative

      I have bootcamp installed. I can already READ my ntfs partition from OS X. No write support. FUSE does have some write support, so that's handy. I may use it.

  8. Great News! by RAMMS+EIN · · Score: 2, Insightful

    This is great news! Finally, there's an easy way to develop filesystems for multiple operating systems. Maybe I'll pick up my netfs project again now. Anyone working on porting FUSE to *BSD?

    --
    Please correct me if I got my facts wrong.
    1. Re:Great News! by jack_csk · · Score: 3, Informative

      I'm not sure about NetBSD and OpenBSD, but then fusefs support is already in FreeBSD.

      By the way, I have decided not to upgrade my OS X until Apple includes out-of-the-box sshfs (that's the one I used the most among those built on top of fuse) support into new version of the OS.

  9. Doh. mount_ntfs is already there by Tetard · · Score: 2, Informative

    I use it everyday...

    # which mount_ntfs /sbin/mount_ntfs

    1. Re:Doh. mount_ntfs is already there by irgu · · Score: 5, Informative

      Mount_ntfs doesn't have full read/write possibility. NTFS-3G has and it's commonly used on Linux.

    2. Re:Doh. mount_ntfs is already there by slamb · · Score: 2, Informative
      From the manpage, mount_ntfs(8) has significant limitations:
      There is limited writing ability. Limitations: file must be nonresident and must not contain any sparces (uninitialized areas); compressed files are also not supported.

      I can't seem to find a straight definition of "nonresident files" in the context of NTFS, but my best guess from glancing over google results is that "resident" files are ones which have their contents in a small block embedded in the inode itself. That'd be an optimization to minimize internal fragmentation on small files. If I'm right, a Windows-produced NTFS is likely to have a lot of these files. Not sure if OS X can't write to them at all, or if it will just make them non-resident when it does so.

  10. Re:good by Dekortage · · Score: 2, Funny

    Um... maybe by "last I checked" you mean the 1990s?

    --
    $nice = $webHosting + $domainNames + $sslCerts
  11. Re:good by henrikba · · Score: 2, Informative

    I usually recommend ext2 on external disks that are to be used seamlessly between windows/linux/mac environments. Works like a charm! Ref. http://sourceforge.net/projects/ext2fsx/ http://www.fs-driver.org/

  12. Re:good by Anonymous Coward · · Score: 2, Informative

    Just go to sharing in system preferences and click for enable windows sharing.

    Job done. It even tells you where to point your windows pc to.

  13. Great! by jack_csk · · Score: 3, Informative

    I was waiting for the sshfs support on Mac OS X for a long time.
    Thanks Google, you did us OS X users a great favorite!

  14. Re: Macs Do Speak Windows by Telephone+Sanitizer · · Score: 3, Informative

    Macs running OS X have built-in Windows file sharing -- you can share files from the Mac and you can connect to Windows network-shares. Windows Active Directory and VPN might complicate things a bit, but offer no more problems from a Mac than they do from the average Windows PC.

    As for sharing an external hard drive, while Macs only read NTFS volumes, they can both read and write to FAT32 volumes which are compatible with Windows as well. There are, however, limitations to FAT32 such as the 2GB maximum file-size which might make that a less-than-optimum solution.

    Another alternative is to purchase a commercial product such as MacDrive, which allows Windows PC's to access hard drives that have been initialized with the Mac (HFS+) file system.

  15. How about ext3? by MMC+Monster · · Score: 4, Interesting

    How about ext3 support on Intel macs? I tried the sourceforge project about a year ago and it didn't work.

    --
    Help! I'm a slashdot refugee.
  16. Re:good by MightyYar · · Score: 3, Funny

    The two worst-connected computers I currently use are my Mac Plus and my TRS-80. It seems like neither one will connect to Windows 3.0. I'm not even sure where I'm supposed to stick the ethernet thingy.

    Next time I'm buying the Commodore 128 or something else that can run GEOS!

    --
    W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
  17. Re:FUSE? by Paulrothrock · · Score: 4, Informative

    I saw that definition when I first heard about FUSE and thought "Okay, so what's userspace?" For those who don't know: Userspace is the thing you're using right now. Rather than having the filesystem buried down deep in the bowels of the system, FUSE puts it above most of the stuff the OS does. That way, you can tell the OS things like "See those collection of Gmail messages to myself or RAR files or tarballs? That's a filesystem. You can move stuff onto and off of it just like another disk." FUSE is an easy, open source way of writing things that use unconventional storage methods for files.

    --
    I'm in the hole of the broadband donut.
  18. genneral problem with FUSE by hswerdfe · · Score: 2, Interesting

    I love fuse it makes so many things so much easier.
    mainly I use "sshfs". but the biggest problem I have is the same problem I have with KDE-IOSlaves.
    is that you can't really chain them

    It makes it easy to Open a Zip/Rar file as a folder, and it makes it easy to treat an FTP server as a folder. but what about a Zip File on an FTP server?

    I just wish there was some easy way to allow the FTP/SSH file systems to recognize that a Zip File as folder.

    or chain to Zip with Encryption.
    or Encryption with Subversion.
    all at the file system level.
    any way thats my rant, but the FUSE effort is brilliant in general.

    --
    --meh--
  19. That's the problem. by Kadin2048 · · Score: 3, Informative

    Sure, no writing, but that's why you convert all your drives to HFS+

    That's kind of a huge limitation. There are lots of times when you might want to share a drive back and forth between a Windows and Mac machine, and it's not possible or desirable to run MacDrive on the Windows side (and having for format the drive with FAT32 sucks mightily).

    Letting the Mac understand NTFS is a good thing, because it provides for more interoperability. The only downside to it, is that it might cause people to think of NTFS as a good inter-operable standard, rather than the disgusting, proprietary, Redmond Albatross that it is.

    Plus, being able to use SSH as a filesystem is pretty slick, and will probably get more use than the NTFS part. KDE's implementation of SSH-as-filesystem (called fish://) is darned slick, and I've always thought that Apple was missing out by not having something like it.

    --
    "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
    1. Re:That's the problem. by Guy+Harris · · Score: 2, Informative
      KDE's implementation of SSH-as-filesystem (called fish://) is darned slick, and I've always thought that Apple was missing out by not having something like it.

      FUSE isn't like it - in at least some ways, it's better. FUSE makes it work at the UN*X API level, which means that even non-KDE applications, such as grep, can use it.

    2. Re:That's the problem. by Kadin2048 · · Score: 2, Informative

      I think "works when SFTP won't" is the only other big advantage.

      I did some quick Googling on the subject of Fish versus SFTP, and apparently: "The fish kio...relies [only] on the ssh [server] providing a unix shell, then it uploads a simple server program written in perl. A beautiful hack and handy if sftp is not available on your ssh server, but nowhere near the performance or reliability of sftp." From here.

      So if the server you're connecting to supports SFTP, and you're only going to be doing file transfers, you might as well use it. But FISH will work even in situation were SFTP isn't supported, and your only way in is via SSH.

      --
      "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
  20. Re:FUSE? by mehemiah · · Score: 2, Informative

    that's just the linux version. The Mac version is hosted by googleCode and its probibly going to be on the first page for a while, otherwise just search for macFuse.

  21. Cocoa Fuse GUI by mgorbach228 · · Score: 5, Interesting

    I'm working on a Cocoa GUI for FUSE (currently called MacFusion). The idea is that it loads plugins for supported filesystems (working right now on SSHFS, NTFS-3G and FTPFS at first). The plugins provide a configuration interface and code to mount/unmount. I'm hoping that this GUI will make FUSE goodness easily accessible to non-technical non-console people. In the future, it should be simple to support encfs, gmailfs, etc. This will be a FOSS project once a first build is ready. Anyone who wants to help is welcome, as are suggestions of any kind on the features/interface.

  22. Tried it and comments by Midnight+Thunder · · Score: 3, Interesting

    On reading about this I decided to install it on my Mac and see what it gives. While a great advancement, this is still a work in progress and still very much something for people familiar with the command line. The aspect that would change all this the ability to use FUSE based FS URLs in the Finder ( known issue ), though this seems to be a limitation based on some private APIs needing to be made public, which I hope Apple resolves.

    --
    Jumpstart the tartan drive.
  23. Re:good by CityZen · · Score: 2, Informative

    For the Mac Plus, there was a SCSIethernet box you could get. Pretty straightforward installation.

    For the TRS-80, your best bet may be running SLIP or PPP over a serial or parallel interface. Of course, viewing web pages in 128x64 block graphics might be something of a challenge.

    Fortunately, Commodore 64/128's have an ethernet solution available. See http://www.dunkels.com/adam/tfe/

  24. Stability: SSHFS or MacFUSE at fault? by jdbartlett · · Score: 2, Interesting

    It's a great tool and one I have practical use for, but testing it out for work I've stumbled across what I consider to be an important issue. I've only tried SSHFS so far, and I haven't done any digging to see where the fault lies, but a dropped connection (either a dropped internet connection or an SSH session the server drops) really confuses the system. Messing about, I killed my internet connection during a read, and Finder hung until my the connection was restored. Another time, my session was killed for idleness by our server; when I tried to perform a read through Terminal, both Terminal and Finder crashed and took all of OS X with them.

  25. Re:Yet more Linux - OSX leeching by moderators_are_w*nke · · Score: 2, Insightful

    If you're not flamebaiting then you probably want a serious answer. My guess is twofold:

    - Mac has a culture of charging small amounts of money for software released commercially rather than open sourcing things (e.g. TextMate). This dates to before the OSX days.

    - People writing code for Macs tend to use Cocoa because its the easiest way to do it and this doesn't port easily to other systems.

    --
    "XML is like violence. If it doesn't solve your problem, use more." - Anonymous Coward