13 Replies
      Latest reply on Nov 19, 2017 3:05 PM by Gwyneth Llewelyn
      jmorby Level 1 Level 1 (0 points)

        So having upgraded to 10.13 beta 1 (10.13 Beta (17A264c)) I'm seeing invalid snapshot errors during fsck / boot

         

        Booting single user results in fsck barfing with error 8 and a message about in invalid unecrypted file

         

        Recovery mode does something similar

         

        Running Disk Repair results in this

         

        Verifying file system.

        Volume could not be unmounted.

        Using live mode.

        Performing fsck_apfs -n -l -x /dev/rdisk1s1

        Checking volume.

        Checking the container superblock.

        Checking the EFI jumpstart record.

        Checking the space manager.

        Checking the object map.

        Checking the APFS volume superblock.

        Checking the object map.

        Checking the fsroot tree.

        Checking the snapshot metadata tree.

        Checking the extent ref tree.

        Checking the snapshots.

        Snapshot is invalid.

        The volume /dev/rdisk1s1 could not be verified completely.

        File system check exit code is 0.

        Restoring the original state found as mounted.

        Operation successful.

         

         

        This is a 10.12 upgraded to 10.13 iBin (Late 2013) Mac Pro

        • Re: Snapshot is invalid
          Batsu Level 1 Level 1 (0 points)

          I see the same thing

          • Re: Snapshot is invalid
            albugna Level 1 Level 1 (0 points)

            Running the command fsck_apfs -n -l /dev/disk1s1 from Terminal (from SU), I found a bad block which is probably originating the error 8...

             

            sh-3.2# fsck_apfs -n -l /dev/disk1s1

            fletcher64_init:58: Selecting AVX2 implementation of fletcher64

            ** Checking volume.

            ** Checking the container superblock.

            ** Checking the EFI jumpstart record.

            ** Checking the space manager.

            ** Checking the object map.

            ** Checking the APFS volume superblock.

            ** Checking the object map.

            ** Checking the fsroot tree.

            ** Checking the snapshot metadata tree.

            ** Checking the extent ref tree.

            ** Checking the snapshots.

            error: fext_val : object (oid 0x14): Bad phys_block_num+len for physical file extent record, phys_block_num 2508084 len 8192

               Snapshot is invalid.

            ** The volume /dev/disk1s1 could not be verified completely.

            • Re: Snapshot is invalid
              Global Odey Level 1 Level 1 (0 points)

              This seems to be related to/caused by local Time Machine snapshots. Using 'tmutil deleteLocalSnapshots <snapshot_date>' to delete all the local snapshots, I no longer get 'Snapshot is invalid.' So Apple has apparently (and so far, poorly) integrated features for TM directly into APFS. TM, however, seems to be working fine regardless.

               

              Still, even with the local snapshots deleted (and automatic backups disabled to prevent new snapshots from being created), I get the same the same 'error 8' in SU or Recovery mode. As far as I can tell, fsck_apfs (so by extension, Disk Utility and diskutil) isn't able do any repairs right now because it thinks the APFS drive is perpetually mounted. Even booting the 10.13 installer from a flash drive, for the life of me, I couldn't get fsck_apfs to even attempt to repair anything. Seemingly no matter what I did, it would say the drive as a whole (ie /dev/rdisk1) was mounted with write access even with the drive completely ejected. Targeting the main partition (/dev/rdisk1s1), it'd say that live repairs weren't supported yet.

               

              Finally, I'm getting a similar error to what albugna is getting which I have a feeling is related to this https://forums.developer.apple.com/message/232795#232795.

                • Re: Snapshot is invalid
                  zviratko Level 1 Level 1 (0 points)

                  You need to boot in single mode (CMD+S) and then run "fsck_apfs -y /dev/disk..." - don't run anything else before (like fsck_apfs -n) or it will fail.

                    • Re: Snapshot is invalid
                      Global Odey Level 1 Level 1 (0 points)

                      Indeed! Thank you!

                      • Re: Snapshot is invalid
                        thedude Level 1 Level 1 (10 points)

                        I did just that and still get an error about being able to validate the volume. Any other Ideas?

                          • Re: Snapshot is invalid
                            Global Odey Level 1 Level 1 (0 points)

                            Did you delete all the local snapshots? Use 'tmutil listLocalSnapshotDates /' and then 'tmutil deleteLocalSnapshots <snapshot_date>' to delete them one by one. For me anyway, fsck_apfs repaired the snapshot count on the first run (from 1 to 0) and then came up clean on the second run (while remaining oblivious to the fact that the freespace on my drive is now off by almost 100GB).

                             

                            Also, and I don't know if it really matters, but fsck recommends always using the raw device so eg. /dev/rdisk1 instead of /dev/disk1.

                              • Re: Snapshot is invalid
                                Xonics Level 1 Level 1 (0 points)

                                Thanks Global,

                                 

                                That worked for me...

                                • Re: Snapshot is invalid
                                  albugna Level 1 Level 1 (0 points)

                                  Thanks, Global Odey: By deleting all the snapshots, now I can pass the fsck_apfs test successfully!

                                  • Re: Snapshot is invalid
                                    Gwyneth Llewelyn Level 1 Level 1 (0 points)

                                    Sadly, it didn't work for me (running 10.13.2 Beta (17C79a) on a MacBook Pro (Retina, 15-inch, Mid 2014)). I did tmutil listLocalSnapshotDates / and it did find one local snapshot, which I deleted as per instructions; then I tried to run fsck_apfs again (in SU mode), and it failed at the exact spot with the same error message. This time, however, tmutil listLocalSnapshotDates / didn't show anything; by contrast, tmutil listLocalSnapshots / gives com.apple.TimeMachine.2017-11-16-003459 (dataless), but I have no way to delete that (assuming it's even possible to do so). Time Machine automatic backups are shut down.


                                    I wonder if the only way out is going the way of reformatting the SSD disk with HFS+...

                                     

                                    I'm also exploring a bit with DaisyDisk, and finding lots of interesting garbage to delete (note that I've been progressively upgrading Mac OS X since... 2000. Of course not on the same machine, but I've been keeping settings from machine to machine, and old stuff gets to accumulate...), but I don't think it will find (and delete/fix) hidden snapshots.

                                     

                                    Also, I'm a fan of Onyx, which usually fixes almost everything and always recovers a lot of disk space, but, this time, even Onyx gets stumped.

                            • Re: Snapshot is invalid
                              Brilliant Things Level 1 Level 1 (0 points)

                              Interestingly, this is now happening on 10.13 + Supplemental update. Deleting local snapshots does not solve the problem. Concerned that TM backups may be corrupted.