6

During the lockdown I decided to use some of my time to backup all the all Mac disks and floppies I have at home so I can store them in a somewhat more readable format that SyQuest cartridges and MFS formatted SD 400k floppies and finally free up lots of space in some libraries.

Doing so I eventually discovered that macOS Catalina can neither mount HFS "non plus" (Apple removed HFS standard support in 10.15, apparently just for the sake of it... Hating this approach to "old", even more when they're keeping support for FAT12 DOS floppies and removing support for their own floppies...) nor MFS (it's actually not supported since Mac OS 8, but from Mac OS X 10.4 Apple offered sources to build a MFS read only support using the great system expandability features that OS X inherited from NeXT).

So, after the still ongoing struggle to get data off damaged floppies (I started weeks ago and still probably have a couple of weeks to go) I'm wondering how to easily access that data from disk images. I know I can use emulators such as minivmac, Sheepshaver and Mojave on VirtualBox to access that data, but that would mean a lot more work to get readable data. I'd love to simply be able to mount old disks and access data through finder.

Chapter 1: HFS Standard

  • HFS standard options are still in /System/Library/Filesystems/hfs.fs plists, so I'm wondering if Apple disabled old HFS support through some external option. Does anyone know if there's any option to enable it back? (Maybe something like boot-args="no32exec=0" to run 32-bit code). Does anyone know what would happen if I took hfs.fs from Mojave and used it in Catalina? Would it possibly work?
  • thejoelpatrol/fusehfs GitHub repo -> managed to build it botching the code but when I mount Standard HFS images I get errors such as Device not configured
  • 0x09/hfsfuse GitHub repo -> it builds and installs correctly, but when I try to mount old HFS images I get Plain HFS volumes not currently supported. Couldn't open volume: Undefined error: 0

  • hfsutils (https://www.mars.org/home/rob/proj/hfs/) -> these are the only working ones but they're a mess to work with. FuseHFS is apparently working with it, but surprisingly it doesn't seem to work

  • elliotnunn/machfs GitHub repo -> I was suggested this library, it seems a great idea, but using DumpHFS seems like using hfsutils

Chapter 2: MFS

  • MFSLives https://web.archive.org/web/20080517055506/https://developer.apple.com/samplecode/MFSLives/index.html -> this was the sample code that apple distributed from Tiger onwards. I read it was supported even on 10.8. Unfortunately it's built for 32 bit so Catalina can't use it (why do they keep removing features?) and I can't get it to build in Xcode.
  • d235j/fusemfs GitHub repo -> I can't find a way to build it either, even after updating the project, updating the code from linked repositories to the last version. Even if libfuse_ino64.2.dylib is in /usr/local/lib and that path is added to Xcode options I just keep getting ld: library not found for -lfuse_ino64.2

Unfortunately I'm too much of a noob to be able to edit those projects, but I think it would be great if Apple offered to its user the chance to read their old Mac data like we're able to do with old DOS disks.

Possible solution?

Apparently FuseMFS is using zydeco/libmfs GitHub repo (which is used in zydeco/minivmac4ios GitHub repo together with libhfs) to create a FUSE wrap to access those file systems, would it be easier to update FuseMFS making it buildable on Catalina and add there libhfs?

I'm just wondering it, but not being a developer I really don't know if it's feasible.

Thanks in advance :)

2
  • brew info hfsutils > hfsutils: stable 3.2.6 (bottled) ...!
    – klanomath
    Apr 22, 2020 at 21:15
  • 1
    @klanomath hfsutils works, but it's a mess to work with (and accessing files is definitely not very comfortable at all). There's an hfsutils gui for Mac (github.com/sentient06/HFSUtilsGUI) that builds correctly, but only offers a command to create a new HFS disk image.
    – gio91ber
    Apr 23, 2020 at 0:02

2 Answers 2

2

Well, I'm a bit late, but Joel's released https://thejoelpatrol.github.io/fusehfs/ FuseHFS 0.15. Apple finally removed the conflicting HFS driver stub in Monterey, so FuseHFS works again from macOS 12 and up. There's no way to read an HFS volume on Catalina or Big Sur (outside the methods already mentioned), but every other OS version has at least read support now. (macOS 10.12 through 10.14 only allow for Apple's read-only driver; FuseHFS won't work).

1

Still not using the Finder, but this java-based tool was able to mount an old HFS disk image and retrieve files in my Catalina (10.15.7) environment.

https://www.catacombae.org/hfsexplorer/

1
  • 1
    HFSExplorer (the Java app suggested by mblakele) works fine on Big Sur 11.4 on Intel, but it doesn't seem to "see" the resource fork of the files when extracting. Thus it may be enough if you're restoring data files, but useless to restore applications and other resource files such as system fonts and sounds from older Macintosh OS, e.g. System 7 / 8 / 9.
    – GarageHack
    Jun 23, 2021 at 22:29

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .