So I wanted to backup an old DVD disc digitally in macOS Catalina, but to my surprise it was not mountable using Disk Utility – only showing the error:
Could not mount (com.apple.DiskManagement.disenter error 49153)
And by using the following Terminal.app command it did not work either, not giving more clues about the underlaying error unfortunately:
% diskutil mount disk3s1s2 Volume on disk3s1s2 failed to mount If you think the volume is supported but damaged, try the "readOnly" option
By inspecting the technical details of the disk lead me to a clue, that the old – in the meantime unsupported – Apple_HFS format may be the issue. A web search confirmed this assumption.
% diskutil list ... /dev/disk3 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: CD_partition_scheme *790.5 MB disk3 3: >>>> Apple_HFS <<<< 653.5 MB disk3s1s2
But for sure you can somehow teach macOS Catalina the ancient language of «HFS» – Apple’s own Hierarchical File System format – right?
And thanks to Unix: yes, you can!
Teaching macOS to read HFS volumes
Bringing back HFS support to macOS comes in 2 variations:
- HFS+ Plus – best case: a simple and well supported solution
HFS+ = Mac OS Extended - HFS – the “oh f*ck” case: a more complex, technical solution
HFS = Mac OS Standard or HFS Standard
Unfortunate for me, I had to go down the road of the 2nd approach.
But fortunate for you, because I can explain you here both approaches.
I definitely recommend to start with approach #1 if you can. Both solutions work alongside each other.
Prepare reading HFS formats in macOS: install Homebrew
For either of the following cases, you need to install Homebrew – the Missing Package Manager for macOS (and Linux).
- Open the
Terminal.app
from Utilities folder (CMD
+E
in Finder)
- Paste the following command & start it by pressing
RETURN
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Follow the instructions in the Terminal window until the installation on your system has finished successfully.
#1 – Best case scenario:
reading HFS Plus (HFS+) volume format
For this you will first need to install the FUSE application for macOS, accompanied with a separate FUSE driver framework.
First: Install FUSE for macOS
- Download & install FUSE for macOS from the official website: https://osxfuse.github.io
Then: Install the FUSE driver for HFS+
- Download the ZIP of hfsfuse from their official GitHub project page:
hfsfuse-master.zip - Unzip the
hfsfuse-master.zip
ZIP-file - Open to the Terminal.app (from
Applications
»Utilities
)& navigate into the unzippedhfsfuse-master
-folder usingcd
-command and the path where you unzipped the folder:cd ~/Downloads/hfsfuse-master
NOTE: if the unzipped folder is not in your user’s
/Downloads/
-folder, then adjust the path accordingly! - Now install the «hfsfuse» driver using the following command in the Terminal:
make install
Now mount the HFS+ volume in Finder using hfsfuse
First create an empty folder in Finder, into which the HFS+ volume content will be mounted into later.
It doesn’t matter where you create this folder.
In Terminal.app use the following command to mount the HFS+ volume:
sudo hfsfuse --force -o noatime /dev/[DEVICE IDENTIFIER] /path/to/empty/folder
NOTE: you have to adjust /path/to/empty/folder
, to the folder location you created before!
That’s it! (if no error is shown) You should be able to browse all contents in the mounted directory & get your files!
#2 – The “oh f*ck” case:
reading data in the original HFS format
This second approach is needed when you already know your Apple_HFS volume is actually of classic HFS – or you tried solution #1 and you got this error…
Plain HFS volumes not currently supported
Couldn't open volume: Undefined error: 0
You need the hfsutils tools for reading a classis Macintosh HFS volume.
Install the hfsutils tools
- Switch to the Terminal.app & install hfsutils using Homebrew
brew install hfsutils
Load and view the data on the HFS volume using hfsutils
With hfsutils things work differently – thus more technical/complex – than e.g. compared with hfsfuse. This means you will not get any UI to browse files & folders from the mounted HFS volume, but do all the work with the Terminal prompt. On top of that, you can only extract files, no whole directories or even files across multiple directory levels.
Let’s get started by first virtually mounting the HFS volume using:
sudo hmount /dev/disk3s1s2
Now you should already be able to browse the file hierarchy. For this use the hls
command – listing all files & folders in the volume’s root level:
sudo hls
In order to browse subdirectories on the volume, use the hls
command followed by the quoted directory path with prefixed :
double-quotes:
NOTE: With hls you always have to use :
double-quotes because they represent the directory structure – like ususally /
slash in regular Unix file paths!
sudo hls ":Desktop Pictures"
soulblighter&832x624.jpg soulblighter@1024x768.jpg soulblighter@640x480.jpg
Copy data from the mounted HFS volume using hcopy
Once you got the hang how to browse and view files and folders, you may want to copy certain files from the volume. In order to do so, you can use the hcopy
command – and fortunately *
-wildcards for including multiple files are supported, however limited on a per folder basis.
Before you start, change the current working directory of the Terminal window into a Finder folder where you want to copy the files into. E.g.:
cd ~/Documents/My-HFS-Volume-Backup
And then use hcopy to transfer single or multiple files to the current working dir as follows:
sudo hcopy -r ":Desktop Pictures:soulblighter&832x624.jpg" ./
sudo hcopy -r ":Desktop Pictures:*" ./
NOTE: The -r
option stands for “Raw Data” and based on my experience preserves the Macintosh files with the best possible success rate. Alternatively you can leave it away to use the “Automatic” mode (-a
).
Once you are finished, you can disconnect the HFS volume with the following command:
humount
That’s it for scenario #2 – retrieving files from an unreadable classic HFS standard volume using macOS Catalina!
I’m trying to run the following script from your article above:
I have a fusion drive on my iMac and I’m trying to access a folder called “Folder” in my Documents folder. I’ve updated the above script to read:
and this is coming up with a password prompt. I enter my password, and then Terminal gives me “could not open device Couldn’t open volume: Operation not permitted”
Thoughts? Corrections to my script? I’m not familiar with device identifiers. In Disk Utility, the fusion drive has “Container disk2” and within that, Macintosh HD (disk2s5) and Macintosh – HD (disk2s1). I figured using disk2s1 in my script was correct, but maybe not?
Thanks for your help! Hope you’re staying safe and healthy.
Hi George,
you cannot directly mount a specific folder using hfsfuse!
First of all, I hope the Fusion Drive is not the volume which you are actually using / working in when using your Mac? If that’s is not the case (e.g. it’s a second hard-drive you just want to retrieve data from), then it could work.
Please be aware, that the second part of the Terminal command is not the Folder ON that particular drive, but a “mount point” on your current system – meaning, this folder will be replaced by a virtual Disk volume allowing you to browse the Harddrive.
So what you need to do from where you are at the moment
1) create an empty folder somewhere, e.g. in your current User home (probaly “George”?) (
/Users/[George?]/
), name it for example “fusion-drive-backup
”2) use the
hfsfuse
-Terminal command as follows:Hope you understand what I mean & it helps you to figure out how to access your data!
Oliver
Thanks for your assistance. I’ll check it out and let you know if I have any further questions.
THANK YOU! Thank you thank you thank you! I have now recovered all the data from the HFS-formatted CD I just bought. (Martin Gardner’s Mathematical Games, by the Mathematics Association of America.) It’s s shame that materiel from publishers that were following the rules 20 years ago (it mentions compatibility with Windows 98 and Windows Millennium Edition, or PowerPC G3 and MacOS X 10.2 or 10.3) is so dangerously close to unreadable now.
This is a great feedback, thanks a lot – and I am very happy that you were able to retrieve the data from your old CD!
After using the recommendation from step 1, he will be able to access the data on the external disk and thus be able to back it up. Thank you very much for posting this valuable information. Thanks to this, he managed to obtain very valuable information from years of work.
Carlos Morales
Awesome, I am really happy to read that my article was helpful to recover your data! 🙂
When I input the “
% cd /path/to/folder/hfsfuse-master
” into the terminal I get this:“
-bash: fg: %: no such job
“Jesse, please type all Terminal commands WITHOUT the starting „%“ – this is only there to indicate that the command relates to be used in the Terminal.app
I tried this and got the same thing, both with and without the “%” used at the beginning…
@Tommy can you provide the command you tried using in the Terminal.app?
I always get “Segmentation fault: 11” when running hfsfuse.
Any idea?
@Lorenzo maybe in this thread you can find something helpful? Seems to have helped many others with the same issue:
https://github.com/phi-grib/flame/issues/22
Hi, thanks for the tutorial! I’m using hcopy for a lot of old HFS formatted floppy disks. How do I copy files that are on the root of the disk rather than in a directory?
@Reiggin I think that should work by using either of these commands:
or probably this for all files on the root level:
Good luck!
I’ve downloaded the hfsfuse-master and it is in a folder sitting on my desktop. when I enter
cd /path/to/folder/hfsfuse-master
the terminal app returns “No such file or directory“. What am I doing wrong?Well you have to adjust the file path of course,
/path/to/folder/
is just an example…What is the default path for hfsfuse-master ? I cannot locate it, but the installation said it was successful.
@Jeff once hfsfuse is installed you should have either or both of these folders on your mac (in Finder use the “Go to Folder” command – CMD+Shift+G):
OIiver, This worked: % cd /usr/local/include/osxfuse — but then the next command did not: osxfuse % make config WITH_UBILIO=local WITH_UTF8PROC=local
make: *** No rule to make target `config’. Stop. — In my /usr/local/include/osxfuse/fuse folder, I have these files: fuse_common_compat.h , fuse_common.h , fuse_compat.h , fuse_darwin.h , fuse_lowlevel_compat.h , fuse_lowlevel.h , fuse_opt.h , fuse.h — Am I missing something?
@Jeff yes – you have to use the
make config
,make
andmake install
commands before/in order to actually install hfsfuse while you still have the source unzipped eg. in your ~/Downloads folder!You should redo all steps as described unter „Install the FUSE driver for HFS+„
After you extracted the zip „hfsfuse-master.zip“ inside your /Downloads/-folder (Step 2) you e.g. use this to navigate to the folder (Step 3) to then the config & install (Step 4):
Oliver, I keep getting the following error when trying to mount disk3s2 using hfsfuse:
Journal is dirty! Attempting to mount anyway (–force).
fuse: invalid argument `Mount’
Does this mean the SSD is actually totally corrupted? I’m not sure how this is possible since it was working perfectly fine before upgrading to Catalina… Any advice?
Brandon, are you sure your disk is HFS+ formatted? What do you get for disk3s2 when running the
diskutil list
command?Thanks for the quick response Oliver! Its TYPE is listed as Apple_HFS. Seeing that, I thought it might just be a regular HFS format, so I followed your guide through the 2nd part but ran into another issue when running: % sudo hmount /dev/disk3s2
Which gave me:
hmount: /dev/disk3s2: not a Macintosh HFS volume (Invalid argument)
Seems that it is HFS+ (1st solution) not the very old classic HFS.
Try verifying the volume (command #1) or try to mount it with debugging information enabled (2) or enforce read-only (3):
Running the first command gives me this error –
fsck usage: fsck [-fdnypqL] [-l number]
Which probably means the command is not running correctly, I assume?
Running the other two commands both result in this error:
Journal is dirty! Attempting to mount anyway (–force).
fuse: invalid argument `Mount’
This worked great for my HFS volume. Is there a way to copy all the folders – or the whole disk? It’s a pain to traverse the folder hierarchy and create and copy each folder. I’d like to just copy the whole disk over to the target folder. Any way to do this with hcopy?
Sam, I would‘ve needed this too (copy a whole disk/ all files at once), but unfortunately didn‘t find a way how to do that.
Hi Oliver. I’ve been running into similar problems to Sam. When I run either of your options 2 or 3 (having verified it is an Apple HFS) such as:
% sudo hfsfuse –force -o noatime -r /dev/disk18s2 /recover/gp
I get this error:
Journal is dirty! Attempting to mount anyway (–force).
mount_osxfuse: /recover: Read-only file system
Trying this:
% fsck_hfs -y /dev/disk18s2
Returns:
** /dev/rdisk18s2 (NO WRITE)
Can’t open /dev/rdisk18s2: Permission denied
Attempting it without the _hfs simply returns a syntax error
Appreciate the effort you’ve put into this post. Cheers
Mike
Mike, thanks for your appreciation.
From the command you used with debug parameter it seems that the target directory
/recover/gp
you specified as mount point is read-only?Also by telling from that path that the folder „gp“ would be located on your Mac at the very root level like:
/Volumes/recover/gp
which I think is not possible. Also the „-r“-flag is not supported by „hfsfuse“.Try this:
Just create e.g. an empty folder
gp
on your desktop and then the right path & command to use would be:Not sure if this is related to the „Journal is dirty!“ error but at least one issue that is in your command to rule out of causing troubles.
I have problem USB drive not working format extended journaled Repairing file system Volume is already unmounted Performing fsck_hfs -fy -x /dev/rdisk2s2 File system check exit code is 8 Restoring the original state found as un I have NO IDEA what this means But I really really need some help
Yasser, this sounds suspiciously like the USB drive is damaged – you may want to look into using some advanced recovery tools like Disk Drill (available for macOS & Windows, includes a free trial mode)
Thank you for posting this! I really had no idea what I was typing in terminal. It was complicated (for me), but it worked. My backup loaded so I could copy items onto a new hard drive. Lifesaver!
Great article. Clearly there’s a need. I followed the steps, followed by the “oh f*ck” case!
When I try sudo hmount /dev/disks4s1s1
I get:
hmount: /dev/disk4s1s1: volume is smaller than 800K (Invalid argument)
Trying to mount a CD via external DVD via USB (via hub via USB-C).
Disk Utility at least sees the attached drive (and the name on the CD). So it’s there. Drive works with other CD/DVDs.
Either way this was a good adventure.
Thx
JRW
Hi Josh & thanks for the kudos 😊
If it complains about the volume size, I could imagine that you may have gotten the wrong „partition“ from the CD, like it‘s „Boot sector“ instead of the larger „data“ part. If
diskutil list
doesn‘t show all partitions of that CD you could still try to manually fiddle with the volume name manually, e.g.:disk3s1s2
disk3s1s1 <— Change last number disk3s1s3 and do on (as long as the first part „diskX“ is staying the same)
Bingo!! Thanks. It’s been many years since I’ve done things at the /dev level and partitions. Creating boot tapes! Bringing back memories. Of course.
Cheers
JRW
Hi Oliver,
I got to this post by chance because i was looking a way to open the Myth II disk image…
Did you manage to recover the Myth II HFS Partition? It’s almost imposible (Extremely slow to be fair) to extract all the files in that disk.
Thanks!
Hi Miguel,
It was not that slow for me, but cumbersome as outlined in the post to copy all files manually. I think I got everything from the Myth II CD copied, but haven’t tried to use the copy yet in order to actually play the game, to be honest.
I briefly checked GOG.com (Good old Games) for a fast way to get your hands on the Game to play, but Myth II is not yet available on it however has over 4000 upvotes on their wishlist: https://www.gog.com/wishlist/games/myth_ii_soulblighter.
I can’t believe I am having this problem with HFS formatted CDROMs I made back in 1997 using Catalina. I am using sudo hcopy -r “:Font Archive/001:*” ./ to copy everything in that CDROM to /users/grant/desktop/target. I get the error hcopy: globbing error. Please help.
Grant,
you have to use „:“ for directory traversing, as stated in the blog post:
Hello, I am running into the error George was mentioning at the very beginning (I am copying the last bit of diskutil list command response that refers to the drive that does not want to mount:
It asks for my password after the command. Desktop/gp definitely exists as a new empty folder, I tried an alternative as well with no luck. Any ideas?
Thanks,
Henrik
SOLUTION: My apologies, I somehow dropped the double ‘–‘ in front of ‘force’ – once I noticed, it worked! THANKS SO MUCH! I saved quite some money that I had almost spent on a data recovery software…
I would really like to understand what I was doing and why this worked, and why my hard drive woudl not mount, but this may be too difficult to explain…But line by line instructions were relatively easy to follow, if you keep your glasses on and pay attention to the right syntax 🙂
Thank you so much! This is amazing!
Is there a quick way to select multiple files when they are not in a directory on the disk? When I get Terminal to list the files on the disk I get this:
sudo hls
RW82 Pg1.eps RW82 Pg14.eps RW82 Pg18a.eps RW82 Pg20.eps
RW82 Pg10.eps RW82 Pg16.eps RW82 Pg18b.eps RW82 Pg3.eps
RW82 Pg11.eps RW82 Pg17.eps RW82 Pg18c.eps RW82 Pg7.eps
Other than just typing out all the file names in a long string, or copying one by one, is there a way to get all the files off the disk? I have a lot of disks to do this to 🙁
Hi Ellie,
you should be able to copy multiple files from your structure as follows:
% sudo hls ":RW82"
% sudo hcopy -r ":RW82:*" ./
Hope it works 🙂
Hi Oliver. I want to retrieve some backup files that were burned to a multi-session cd-r in HFS Standard format. As Mac Catalina no longer supports that format, and Disk Utility throws up the disenter error 49153 if trying to get it to mount, which is the easiest approach? Will getting a new burner solve the problem or is this a Mac OS problem? Thanks for any help.
I would go with the recommendation in the post: first try the HFS+ approach with
hfsfuse
and – if it’s not working – do the second part for the original HFS format withhfsutils
.Regarding your disc being a multi-session cd-r, I think that should be no problem and the different partitions should show up when listing the disk volumes using the
diskutil list
-command in Terminal.app – just make sure then, with either hfsfuse or hfsutils, to use each and correct disk identifier (e.g. “disk3s1s2”, “disk3s1s3”, etc.).Last but not least: definitely DON’T buy a new burner – I think that would be money spent for nothing. If you cannot recover your cd-r with the tools provided here, better try to ask around if a friend with a Windows or Linux computer may be able to help you out to read the disk on their system and recover the data for you.
Many thanks Oliver. Fortunately I found a disk burned in Extended format so was able to retrieve the files I needed. Of course I later found out could have bought Parallels and installed Snow Leopard Server but that would have meant further expense. Thanks again for your help.
Hello,
When running the first make command (make config WITH_UBILIO=local WITH_UTF8PROC=local ) , I get the following error:
Have there been any changes to this repo recently that may cause this error or am I using the wrong command?
John, there is an issue report open on the GitHub project for hfsfuse where someone reported that the root cause for him/her was with this error that Fuse itself was not yet installed on the macOS – but this is a pre-requisite.
Ah of course! Thank you.
Hi Oliver, thank you. It did work. Although I was able previously to work with my external ssd drive formatted with HFS+ suddenly I was not able to mount it. I think the Time Machine backup to that ssd drive from AFPS ssd internal MacBook Pro ssd caused the issue.
Oliver, big thanks for this…
I’ve followed the steps in the second method, but get this error message:
hmount: /dev/disk3s1s2: error opening medium (No such file or directory)
I’ve also tried it with disk3s1s3 and get an “unknown volume” error.
I’m running Terminal 2.10 (433) on Catalina 10.15.7
Resolved the issue above by using disk4s1s2, as I was trying to access a CD on an external Mac drive. Putting this here in hopes it helps others.
Once I did that, Oliver’s instructions (the #2 “oh f*ck” case) worked perfectly. I was able to copy over files from two data CDs that were in HFS and could not be read by Catalina.
Noting also for people like me doing this for the first time that what looks like a single quote mark above (“) are actually two separate single quotes (‘) typed together (”) It’s an important distinction but they look the same on the screen in some fonts.
Lastly, I discovered that if you are trying to reference a folder or file with a space in the name in terminal when copying over files or performing other operations, you can type the name like this: firstword\ secondword\ thirdword and terminal will recognize the name.
Thanks for your insights @Ted! Happy it worked out!
Hello Oliver – Thank you for taking time to find a solution for this issue to save files on old CD’s. I have followed your instructions to
Install the FUSE driver for HFS+
Download the ZIP of hfsfuse from the official GitHub page:
https://github.com/0x09/hfsfuse
Unpack the hfsfuse-master.zip ZIP file
Switch to the Terminal.app & navigate into the unzipped hfsfuse-master-folder by using:
% cd /path/to/folder/hfsfuse-master
When I enter “% cd /path/to/folder/hfsfuse-master” into terminal I get an message saying “-bash: fg: %: no such job”
What did I do?
Thanks for your time.
@Gordon: you have to use the commands WITHOUT the leading „%“
Yes – does not work. Thanks anyway
@Gordon the error you posted with the
cd
-command is only occurring when you type a not needed “%” before the command. However, I updated Step 3) to make this more clear:NOTE: if unzipped the folder somewhere else than in your user’s /Downloads/-folder, adjust the path accordingly!
I cannot thank you enough for this. It worked like a charm. I had some important data to retrieve on a GUID NAS configuration that suffered the wrath of Catalina. I tried multiple workarounds on the Apple forums, but to no avail. Your solution works. It allowed me to transfer all my data from the RAID configured drives to another external hard drive. I then went back to the RAID drives and formatted them switching to AFTS. They are now mounted…FINALLY! Apple really needs to get on this. Catalina is a nightmare! Thanks again!
Thanks for you words and this story, Will 😊 Glad to hear that I could help!
Thank you so much for this article. It saved me a ton of work. I got this error on a LaCie 2TB Thunderbolt/USB 3 rugged drive. I also got this error on a few other drives. Here is what I don’t understand. Why does this work and not the Finder to mount the drive. The drive I am using your 1st method is an HFS+ formatted drive. Catalina sees other drives formatted the same just fine. I don’t see any indication that HFS+ was removed from Catalina as I’ve been working with those drives without issue. There must be something else going on.
Hi, I did the “old HFS” way, but all the files I copy have “;1” at the end of the file extension. Do you know why, is there a way around this?
Hi Magnus, strange I haven’t had this behavior.
2 things:
1) if the files are in the right Format despite the «;1» Extension (e.g. images can be opened with Preview.app, and so on), you may just want to use a finder file rename action to remove this unwanted suffix from all affected files
2) try to use
hcopy
-command with another file format option, such as-a
for «automatic», rather than «raw» – see full list here: https://manpages.debian.org/testing/hfsutils/hcopy.1.en.htmlThanks! But the suffix to the file extensions are there when I just read with hls also. The files are ok and I can just remove the suffix manually, but it would be best to find another way since I have a lot of CDs, Strange that others do not experience this.
Hi Oliver,
I’m getting errors with hfsfuse: clang: error: linker command failed with exit code 1 (use -v to see invocation)
Any ideas?
Mel, yes I do – see solution for this on a previous comment: you have forgotten the first step, to Install FUSE for macOS.
Oliver,
Many thanks for the very quick response! I thought I had installed it OK (I didn’t include the whole Terminal script) but I will try again.
Mel
Hi Oliver,
As far as I can see, Fuse is installed (/usr/local/include/fuse exists). Here is the full Terminal session…
Mel, try to unzip the hfsfuse-master again, and then directly use the 3rd command within the new unzipped folder:
Not sure what you mean by ‘within the new unzipped folder’. Like this? (as you can see, there is still an error).
meljefferson@iMac hfsfuse-master % cd ~/Downloads/hfsfuse-master
meljefferson@iMac hfsfuse-master % make install
Makefile:87: Warning: git repo nor prepackaged version.h found, hfsfuse will be built without version information
Oliver,
Apparently the errors were caused by a bug in the ‘Makefile’ file, which has now been fixed (https://github.com/0x09/hfsfuse/commit/c7e10ea8f2133abc40123e15cd409597998a0335).
Unfortunately I still have a problem…
meljefferson@iMac hfsfuse-master % sudo hfsfuse –force -o noatime /dev/Hl-dt-st DVDRW GX30N /Users/meljefferson/Mount HFS+
could not open device
Couldn’t open volume: No such file or directory
It seems as if I am not identifying my device correctly. It is an Apple Superdrive, which I thought was identified as ‘Hl-dt-st DVDRW GX30N’. How should I find the correct identification?
@Mel you are using the wrong drive ID – you need to change
/dev/Hl-dt-st DVDRW GX30N
with something like/dev/disk3s1s2
(use the Disk Utility to find the right Identifier, or in the Terminal.app with the commanddiskutil list
)In addition, the path to the target folder you defined
/Users/meljefferson/Mount HFS+
does not work like that in Terminal. Do you really have a folder named “Mount HFS+” created in your user home? If that’s correct, in Terminal.app you have to type it as follows:/Users/meljefferson/Mount\ HFS+
Hi Oliver, thanks for this very thorough solution. I got pretty far with solution #1 and when I put in my specific terminal command (sudo hfsfuse –force -o noatime /dev/disk2s2 /Users/user/Downloads/fusion-drive-backup—My device is disk2s2 according to did utility)
I get this: “macFUSE Volume 0 (hfsfuse)” can’t be opened because the original item can’t be found.
So I started trial #2 and got this:
hmount: /dev/disk2s2: not a Macintosh HFS volume (Invalid argument)
user@users-MBP hfsfuse-master %
Any ideas?
Thanks!
@Patrick: it seems that the CD/DVD cannot be found properly. Here’s an article giving some advice on possible solutions «USB HDD can’t be opened because the original item can’t be found
»
e.g.:
THANK YOU SOOOOOOOOO MUCH !
Hello Oliver,
I’m not at all used to Terminal, and besides, it’s in English, which doesn’t help me (I’m French).
I tried what suggested, to be able, under Catalina, to read an HFS CD-Rom, but nothing happens after the “make install” command of your tutorial # 1.
What should I do, knowing that:
– my CD (visible grayed out in Disk Utility) is called “After Effects Master Class”.
– the CD-Rom is in BSD “disk12s1s2”.
– the DVD drive is BSD “disk12”.
– the Empty Folder on the Desktop is called “CD-recup”.
– my user is “Jean-Marc G”
I tried a bunch of variable, but it tells me this:
“Plain HFS volumes not currently supported
Couldn’t open volume: Undefined error: 0
imac-jean-marc-g-1: hfsfuse-master jean-marc-g $ sudo hfsfuse –force -o noatime / dev / disk12s1s2 / path / to / CD-recup”
Can you help me ?
Thank you.
Jean Marc
Hi Jean Marc,
what you describe & see as “Plain HFS volumes not currently supported”, is exactly the unfortunate case where you have to progress with Tutorial #2…
hfsutils
through Terminal.appsudo hmount /dev/disk12s1s2
sudo hls
cd ~/Desktop/CD-recup
Hope this helps! Unfortunately it will be a lengthy process and you have to do it all in the Terminal window…
Hello Oliver,
Thank you for this personalized feedback.
I applied what I suggested, but nothing happens afterwards.
It spins the CD in the DVD player a bit, but that’s it.
Today the CD-Rom arrived in Disk Utility as “disk13s1s2”.
So here’s what Terminal displays:
What to do ?
Thank you.
Jean-Marc (France)
@Jean-Marc: well this looks very good already! You are basically “good to go” by starting directly using the
hls ...
&hcopy ...
commands, to retrieve files from your CD! No need for the first installation steps again.Try this:
1)
cd ~/Desktop/CD-recup
2)
sudo hmount /dev/disk13s1s2
Now copy files:
Copy “__CMG_License.pdf” & “Readme.txt”:
sudo hcopy -r ":Desktop Pictures:*" ./
Copy all files from “Desktop Folder”:
sudo hcopy -r ":Desktop Folder:*" ./
Copy all files from “Chapter”:
sudo hcopy -r ":Chapter:*" ./
Copy all files from “Projects”:
sudo hcopy -r ":Projects:*" ./
etc.
“Browse” the files on the CD folders
To check if the CD has additional folders WITHIN for example “Projects”, you can do this:
sudo hls ":Projects"
…if there is a “Project XY”:
sudo hls ":Projects:Project XY"
…and on and on:
sudo hls ":Projects:Project XY:Pictures"
And to copy files from these sub-folders:
Copy all files from “Projects XY” & “Project XY:Pictures”:
sudo hcopy -r ":Projects:Project XY:*" ./
sudo hcopy -r ":Projects:Project XY:Pictures:*" ./
Hallo Oliver,
i have a very old CD ROM from Germany in 1996.
i have use the 2. Way to mount it, it is a pure apple HFS file system.
i got some illegal byte sequence problem, maybe it is very old.
in the “:Inhalt in den Systemfolder” folder some “?” appared. and copy not successfully
Do you know how to resolve it?
$ sudo hmount /dev/disk3s1s2
$ sudo hls
$ sudo hls “:Inhalt in den Systemfolder”
$ sudo hcopy -r “:Inhalt in den Systemfolder:*” CD3_apple/
By the way, i have also used the windows 10 system to look the CD, but i found in windows those files:
because this CD is too old , for the Video i used ffmpeg to get the format with indeo 3.2 , which used in windows95 system.
Stream #0:0(eng): Video: indeo3 (IV32 / 0x32335649), yuv410p, 182×182, 906 kb/s, 12 fps, 12 tbr, 600 tbn, 600 tbc (default)
Metadata:
creation_time : 1996-12-07T13:23:58.000000Z
handler_name : Apple Video Media Handler
encoder : Intel Indeo™ Video R3.2
1. way to play it is on windows 95, install the exe file ,then play the CD
2. way to mount it on very old mac , copy the total ” Inhalt in den Systemfolder” to a logcal folder, then take “Neujahrskonzert” app to desktop, then click it to play
but looks like only runnable in very old machine.
Thanks
Xia
@Xia it looks like you only have a little mistake with the target-folder “CD3_apple” where you want to copy the files to – but not the files on the CD!
Did you create a new folder “CD3_apple” e.g. on your Desktop?
You can also copy directly to the Desktop, like this:
1)
cd ~/Desktop/
2)
sudo hmount /dev/disk3s1s2
3a)
sudo hcopy -r “:Inhalt in den Systemfolder:*” ./
3b) Or, when you created a folder “CD3_apple” on Desktop for the files:
Hope this helps!
Hallo Oliver,
CD3_apple is target folder which is created by me before , under user/ folder, i worked on my user folder then put all command.
sudo hcopy -r “:Inhalt in den Systemfolder:*” CD3_apple/
Okay so if you have something like this:
Then you use the
hcopy
-command as follows:If CD3_apple is your CURRENT user, then you ca do either of these (they are the same / alias):
or to put files directly on the Desktop:
Xia, one remark regarding the
hls
folder/file list on your CD with “?” – I think you still see different individual files & folders. You may be able to copy them like this(NOTE: not sure if I am right)
njk.id
sudo hcopy -r “:*” /Users/CD3_apple/
Desktop Folder
sudo hcopy -r “:Desktop Folder:*” /Users/CD3_apple/
Sounds
sudo hcopy -r “:Sounds:*” /Users/CD3_apple/
Videos
sudo hcopy -r “:Videos:*” /Users/CD3_apple/
Neujahrskonzert
sudo hcopy -r “:Neujahrskonzert:*” /Users/CD3_apple/
Indeo? Video
sudo hcopy -r “:Inhalt in den Systemfolder:Indeo Video:*” /Users/CD3_apple/
QuickTime? Musical Instruments
sudo hcopy -r “:Inhalt in den Systemfolder:QuickTime Musical Instruments:*” /Users/CD3_apple/
etc.
When I try to connect the Apple SuperDrive or an external DVD drive and read a CD-ROM, the drive shows up in Disk Utility, but the drive won’t mount the disc. I get an error “Could not mount disc name” (com.apple.DiskManagement.disenter error 49153.)
I have 3 CDs that were written in 2003 and I can no longer use the data. It into a book on it, which was then written with xpres, freehand and other graphic data on it.
Could you make this data readable on windows 10 for me against payment?
Thanks and regards
@Ruedi Danke für das Angebot, aber ich kann leider keine solchen Aufträge entgegennehmen 😊
Wenn du aber ein Windows 10 installiert hast, versuche es mit dem Windows-Programm “HFSexplorer“:
Würde mich auch über ein Feedback freuen, ob es damit unter Windows klappt… konnte ich bisher nämlich nicht ausprobieren.
Here, Oliver, my feedback.
Windows 10 HFSExplorer load file system autodetect finds cdrome apm: partition 1, but the access is with could not find any file system on device.
An employee with a mac pc also tested and found in the terminal that the cd with the name ‘tina-archiv’ is locked.
now we don’t know what to do next.
thank you very much and have a nice evening
Ruedi
HI Oliver
Thanks for your article.You seemed to help a lot of people with this article. I am not a programmer or know about code. I make music using a Mac book pro , Mac OS Big Sur 11.2 , I had some old music files on a CD but the Mac won’t mount the CD.
As per your instructions , I installed Homebrew & FUSE.
I then went to the page https://github.com/0x09/hfsfuse
I downloaded the
But I could not continue with your instructions to ‘Unpack the hfsfuse-master.zip ZIP file’
The you say to:Switch to the Terminal.app & navigate into the unzipped hfsfuse-master-folder using cd-command and the path where you unzipped the folder:
cd ~/Downloads/hfsfuse-master
But I didn’t see any folder
The folder I downloaded was called hfsfuse-0.120
When you have time should you advice on this.
Thanks
Marcus
@Marcus: I updated my article with the correct hfsfuse ZIP-download
hfsfuse-master.zip
***UPDATE***
Hi Oliver
I did #1 and got:
So starting step 2:
Result:
Then:
My external CD reader started to come alive!
I was able to read what was on the disk. Thanks!
I tried the ‘
sudo hcopy -r
‘But did not copy to my folder.
Is it possible to copy the entire contents of the disk?
This is what happens when I used:
‘
sudo hcopy -r
‘any thoughts?
Thanks for your time.
I know nothing about coding but it seems like I am making progress being able to ready the disk.
cheers
Marcus
Great progress Marcus!
I am a bit confused about the slash “/” in your commands, as with
hls
&hcopy
you need to use “:” instead of “/”… and don’t forget to use : also at the beginning, when you want to “go into” a folder.But unfortunately no, you cannot copy whole folders – which is a big pain & downside from
hcopy
unfortunately, I was missing this too.However, as stated in my article, you can copy multiple files per folder using the asterisk * like this:
or
Thanks very much for this!
I had the 41953, couldn’t mount the volume, First Aid errored with the 41953.
Followed your steps and I’m able to get the data off the volume.
Cheers!
Hi. I run sudo hfsfuse –force -o noatime /dev/disk2 /volumes/usb and get an error (unrecognized volume format. Couldn’t open volume: unidentified error
@SJ you cannot mount a virtual volume to a USB drive – and the path command is also case sensitive (=
/Volumes/...
). And it could be that/dev/disk2
is wrong – check using Disk Utility or the Terminal-commanddiskutil list
.Try a newly created, empty folder e.g. on your Desktop then:
Oliver, your first method successfully allowed Big Sur to load several CDs from 2001, however CDs previous 1995 etc. would not. Is the situation that Apple does not support loading CDs any longer after Catalina? I tried the 2nd method but no luck so far, will try again
Hello,
I am trying option #2 to access data on a HFS disk. I’m running into issues with the installation using brew install hfsutils.
I get the following error message:
curl: (22) The requested URL returned error: 404
Error: Failed to download resource “hfsutils_bottle_manifest”
Download failed: https://ghcr.io/v2/homebrew/core/hfsutils/manifests/3.2.6
Not sure if you have any tips on how to fix this. I did some searching and couldn’t find anything.
I’m running Big Sur on my MacBook Pro.
Thanks
Hi Amanda,
This problem could be related to your local Xcode Command Line Tools or Homebrew itself. Try to resolve it using the following commands in Terminal:
And once that’s done, try to install hfsutils again:
Hope that works!
Thanks Oliver! It was an Xcode issue.
I found a simple solution: launched Windows10 with Parallels, connected the external SuperDrive, selected Windows and copied the CD…
instead of mounting the filesystem and accessing files I did an iso which I unzip to access all the files (we have plenty of space today so if you don’t know what you want out of the iso, it’s better to copy all).
Commands used under terminal:
// to find the volume name of the CD drive
// unmount the filesystem
// create the iso from the HFS volume
Hi Oliver,
Thanks for the helpful article!
I am trying to mount an IBM USB Diskette drive with a HFS 3.5″ floppy disk inside. I’ve installed hfsutils and am able to mount the drive and run an `hls` command, but i’m not able to copy the files to a local folder – getting the following error:
error opening destination file (Illegal byte sequence)
. It’s important to note that the files are probably in a Hebrew format or encoding, that may be the issue! Do you have any idea on how to solve it and succeed in copying the files?So glad I found this. Managed to pull a bunch of photos off of PhotoWorks CD-ROMs from 1999-2001. Gracias.
Hi Oliver,
THANK YOU for the painstaking research you’ve put into these solutions… I’m a far cry from being a coder and have never used terminal before, so it’s a little nerve wracking to me; I have successfully installed HomeBrew, but obvious ‘user-error’ is tripping me up… when trying to install Fuse I get all of this:
Hi Keith,
Thanks for the kind words.
Can you try the following?
Go into the folder “hfsfuse-master” in your Downloads. Delete the file named “Makefile”.
After that, go back to the Terminal.app and do…
And now use the following command:
Do you still get the same error?
If not, then the installation should have succeeded and you can continue with « Mount the HFS+ volume in Finder using hfsfuse».
Hope it works!
Hi Oliver,
removing the “Makefile” from the hfsfuse-master folder worked! Here’s what it says:
Then to Mount the HFS, I typed this command:
Which prompts terminal to tell me this:
I didn’t get any type of error messages, so I assume I’m doing it right? The folder (I named it ‘recovery’) is still empty, and the CD-R still won’t mount… does this mean I have to try #2 – The “oh f*ck” case?
@Keith hmm… I think it still did not properly install
hfsfuse
.What do you get in the Terminal.app when typing the following?
(if
hfsfuse
was installed properly, it should display this application help text in the Terminal window…)And just to make sure: you did install macFUSE as stated in the blog post above?
What macOS Version are you currently running?
Thank you for this, I think!
So far, I get errors running the very first suggested command: macOS Catalina 10.15.7
I would like to look at some old data CDs.
@Gary sorry for that, it seems the command to install Homebrew has changed. Use this:
dear you are my master. THANK YOU
Hi Oliver and everybody else around here!
I’m trying too to mount an old cd-r and hoped the above procedure would help me. Unfortunately I got stuck while installing the fuse driver:
install: /usr/local/bin/hfsfuse: Permission denied
here is the complete Terminal transcript:
hfsfuse-master % make install
HAVE_BEXXTOH_ENDIAN_H: no
HAVE_BEXXTOH_SYS_ENDIAN_H: no
HAVE_OSBYTEORDER_H: yes
HAVE_BIRTHTIME: yes
HAVE_STAT_FLAGS: yes
HAVE_STAT_BLKSIZE: yes
HAVE_STAT_BLOCKS: yes
HAVE_VSYSLOG: yes
HAVE_PREAD: yes
Makefile:161: Warning: git repo nor prepackaged version.h found, hfsfuse will be built without version information
/Library/Developer/CommandLineTools/usr/bin/make -C lib/libhfsuser/
make[1]: Nothing to be done for `all’.
/Library/Developer/CommandLineTools/usr/bin/make -C lib/libhfs/
make[1]: Nothing to be done for `all’.
/Library/Developer/CommandLineTools/usr/bin/make -C lib/ublio/
make[1]: `libublio.a’ is up to date.
/Library/Developer/CommandLineTools/usr/bin/make -C lib/utf8proc/
make[1]: Nothing to be done for `all’.
mkdir -pm755 /usr/local/bin
install -m755 hfsfuse hfsdump /usr/local/bin
install: /usr/local/bin/hfsfuse: Permission denied
make: *** [install] Error 71
I never really worked with terminal before, so I hope somebody out there can give me an advice how to get beyond that obstacle.
Hi Roland
Does your Mac User probably not have „administrative“ permissions?
Maybe what could work is using
sudo make install
in the Terminal. („sudo“ enforces system administrative permissions on the succeeding command, „make install“ here).For what its worth, i was able to fix within Mac Disk Utility by right clicking on the drive and formatting as APFC without loosing any data
It has not been possible thank you very much for everything.
hmount: /dev/disk4: not a Macintosh HFS volume (Invalid argument)
This didn’t work for me. How do I delete the apps/extensions from my system. The uninstaller for Fuse didn’t seem to do anything?