Re: Repair Metadata corruption detected at xfs_inode_buf_verify on CentOS 7 virtual machine

Dave Chinner
2021-09-08T21:39:29Z

On Wed, Sep 08, 2021 at 10:35:57AM -0400, brian wrote:
> I have CentOS 7 Virtualbox virtual machine (VM) that gives the following
> error on boot(removed parts replaced with …)
> ----------------------------------------------------------------------------
> XFS (dm-2): Metadata corruption detected at xfs_inode_buf_verify...
> XFS (dm-2): unmount and run xfs_repair
> XFS (dm-2): First 128 bytes of corrupted metadata buffer:
> …

You cut out the part of the error report that actually means
something to us. Can you post the error message in full?

> XFS (dm-2): metadata I/O error in “xlog_recov_do..(read#2)” at daddr 0x1b32
> error 117
> ----------------------------------------------------------------------------
>
> I tried entered emergency mode, entered password and tried:
>     xfs_repair -L /dev/mapper/centos-root
>
> But I got the error:
>     /dev/mapper/centos-root contains a mounted filesystem
>     /dev/mapper/centos-root contains a mounted and writable filesystem

$ man xfs_repair
....
-d Repair dangerously. Allow xfs_repair to repair an XFS
filesystem mounted read only. This is typically done on a
root filesystem from single user mode, immediately followed
by a reboot.

> Next I booted from the Centos ISO then went
>       troubleshooting → Rescue a CentOS system  → 1) Continue
>
> This fails.  I get lines of = marks.  When I left overnight, I had a blank
> screen.  When I ALT+Tab to program-log and then back to main, I got a screen
> of scrolling errors.

Which typically happens if the filesystem full of inconsistencies
and corruptions.

> I nightly backup my data including this VM with rsync to a USB drive.  My
> last backup was while the VM was running.  In Virtualbox and on my computers
> drive, I deleted the VM using the virtualbox GUI.  I thought this would move
> the VM to the trash but it permanently deleted the VM.  The problem I'm
> having is with the backup VM from my USB drive.

How did you do the backup? Was it an image file backup from the
host, or a full filesystem rsync from inside the guest ?

> How should I troubleshoot and fix this problem?  My main goal is to get my
> data off the VM.  I also unsuccessful with mounting the .vdi file in another
> computer.

Sounds like you simply backed up the image file on the host?

If so, did you freeze the filesystem in the guest (or the whole
guest VM) while you did the backup? If the guest fs wasnt' frozen,
and the VM was active while the backup was done as you say, then it
is guaranteed that the image file that was copied will contain an
inconsistent image of the filesystem. If there was lots of
modifications occurring at the time of the copy being run, it will
be full of corruptions and may well be completely unrecoverable.

DO you have any older backups you can try to recover from?

Cheers,

Dave.
--
Dave Chinner
david@fromorbit.com