sgan81 / apfs-fuse

FUSE driver for APFS (Apple File System)
GNU General Public License v2.0
1.79k stars 164 forks source link

"Unable to get volume!" error when trying to mount APFS partition #167

Closed eXotech-code closed 1 year ago

eXotech-code commented 2 years ago

Hello, I have made a Time Machine backup on an external SSD and currently I'm trying to access its contents from a Pop_OS! installation. While running the apfs-fuse command to mount the drive it exited with error message "Unable to get volume!". I have tried to debug it with gdb and so far I have found out that GetVolume() returns false because oid is equal to 0. I would appreciate any help with this issue. Thanks in advance!

eXotech-code commented 2 years ago

Sending a screenshot with Dbg_Info enabled: image

eXotech-code commented 2 years ago

UPDATE: I have changed the value of g_vol_id from 0 to 1 in the ApfsFuse.cpp file and for some reason it worked! I have full access to all the volumes. I don't know why it worked but it worked.

brunohenriquy commented 2 years ago

I have a SSD with two partitions: sdc2 - APFS - TimeMachine sdc3 - APFS - Just documents

I compiled the original code (with g_vol_id = 0) and I was not able to mount the sdc2(Unable to get volume!), only sdc3. When I change the g_vol_id to 1, I can mount sdc2 but not sdc3(Unable to get volume!)

Commands used:


sudo ./apfs-fuse -o allow_other /dev/sdc2 /media/user/tm
sudo ./apfs-fuse -o allow_other /dev/sdc2 /media/user/docs

Maybe there is some argument missing to inform on the command.
kovstas commented 1 year ago

@brunohenriquy I faced with the same issue. I solved it without recompilation.

apfs-fuse -o vol=0 /dev/sdb3 ~/disks/data
apfs-fuse -o vol=1 /dev/sdb2 ~/disks/backup
brunohenriquy commented 1 year ago

@brunohenriquy I faced with the same issue. I solved it without recompilation.

apfs-fuse -o vol=0 /dev/sdb3 ~/disks/data
apfs-fuse -o vol=1 /dev/sdb2 ~/disks/backup

So there it is, the missing arg, hehehe. Thanks dude!!

sgan81 commented 1 year ago

You can use apfsutil to check what volumes are available ... and there is also a -v parameter, which is the same as -o vol.

brunohenriquy commented 1 year ago

Hey @eXotech-code, @sgan81 since this is not an issue, it was a missing argument on the command line, I think we could close it.

eXotech-code commented 1 year ago

Agreed. Closing this.