3

Running fsck_apfs reports an error checking my main disk:

root@bix ~ # fsck_apfs -n -l /dev/disk1s1
** Checking the container superblock.
** Checking the EFI jumpstart record.
** Checking the space manager.
** Checking the space manager free queue trees.
** Checking the object map.
** Checking volume.
** Checking the APFS volume superblock.
** The volume Macintosh HD - Data was formatted by hfs_convert (748.1.46) and last modified by apfs_kext (1412.81.1).
** Checking the object map.
** Checking the snapshot metadata tree.
** Checking the snapshot metadata.
** Checking snapshot 1 of 2 (com.apple.apfs.purgatory.84779e)
error: sibling_map_val object (oid 0x2c6200000000168): invalid length (20)
   Snapshot is invalid.
** The volume /dev/disk1s1 could not be verified completely.

The output is the same in both Recovery Mode and Safe Mode (without the disk being mounted).

Searching online for "sibling_map_val object" only yields some Hopper disassembler code, which makes me think that this is an unusual error to have. However, lots of people mention the "Snapshot is invalid" output.

Is there any way to force-delete the snapshot? The system doesn't report that any exist:

root@bix ~ # tmutil listlocalsnapshots /
Snapshots for volume group containing disk /:

The root problem is that my main disk keeps filling up, despite my deleting hundreds of GBs of files. Daisy Disk reports that it is inaccessible hidden system files (even despite upgrading permissions via the non-App-Store version of the utility). I suspect that there is some corrupt local snapshot in the "com.apple.apfs.purgatory.84779e" mentioned in the fsck output, but I don't see any way to trash it.

I've tried disabling/enabling Time Machine backups and Spotlight indexing to no avail. Rebooting always winds up recovering about 5GB, but then it quickly drops down to about 2GB of free space and hovers around there until the system starts complaining that there isn't enough system memory for my applications to remain open. And since I can't free up sufficient space, Time Machine complains that it doesn't have enough space to create a local snapshot, and so my disk isn't being backed up (and so I can't just wipe out the whole file system and restore from Time Machine). I'm stuck with a disk that keeps on filling itself up.

1

Is there any way to force-delete the snapshot?

Yes, and you may as well make a script of it because it's a frequent problem. 99% of the time is the oldest snapshot.

listlocalsnapshots / ... Output of that command looks like this:

Snapshots for volume group containing disk /:
com.apple.TimeMachine.2020-04-01-122516.local
com.apple.TimeMachine.2020-04-01-132348.local
com.apple.TimeMachine.2020-04-01-143800.local
com.apple.TimeMachine.2020-04-01-153811.local
com.apple.TimeMachine.2020-04-01-183757.local
com.apple.TimeMachine.2020-04-01-193758.local
com.apple.TimeMachine.2020-04-01-203828.local

You just need to copy the timestamp for each line you want to kill and paste it into the next command. Again, usually deleting just the oldest (top) one will resolve related issues.

sudo tmutil deletelocalsnapshots 2020-04-01-090758

If successful, you will get no response (exit 0) in terminal.

| improve this answer | |

You must log in to answer this question.

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