xfs
[Top] [All Lists]

Re: xfs_repair refuses to run on cleanly mountable partition

To: Markus Trippelsdorf <markus@xxxxxxxxxxxxxxx>
Subject: Re: xfs_repair refuses to run on cleanly mountable partition
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Mon, 07 Oct 2013 10:21:56 -0500
Cc: xfs-oss <xfs@xxxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20131007151637.GA280@x4>
References: <20131007151637.GA280@x4>
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130801 Thunderbird/17.0.8
On 10/7/13 10:16 AM, Markus Trippelsdorf wrote:
> x4 ~ # xfs_repair -V
> xfs_repair version 3.2.0-alpha1
> 
> x4 ~ # mount -o logbsize=256k /dev/sdc1 /mnt
> ...
> [ 6419.592649] XFS (sdc1): Mounting Filesystem
> [ 6419.642480] XFS (sdc1): Ending clean mount
> 
> x4 ~ # xfs_info /dev/sdc1
> meta-data=/dev/sdc1              isize=256    agcount=4, agsize=61047552 blks
>          =                       sectsz=4096  attr=2, projid32bit=0
>          =                       crc=0
> data     =                       bsize=4096   blocks=244190208, imaxpct=25
>          =                       sunit=0      swidth=0 blks
> naming   =version 2              bsize=4096   ascii-ci=0
> log      =internal               bsize=4096   blocks=119233, version=2
>          =                       sectsz=4096  sunit=1 blks, lazy-count=1
> realtime =none                   extsz=4096   blocks=0, rtextents=0
> 
> x4 ~ # umount /mnt
> 
> x4 ~ # xfs_repair /dev/sdc1
> Phase 1 - find and verify superblock...
> Phase 2 - using internal log
>         - zero log...
> ERROR: The filesystem has valuable metadata changes in a log which needs to
> be replayed.  Mount the filesystem to replay the log, and unmount it before
> re-running xfs_repair.  If you are unable to mount the filesystem, then use
> the -L option to destroy the log and attempt a repair.
> Note that destroying the log may cause corruption -- please attempt a mount
> of the filesystem before doing this.

What kernel are you running?  Does older xfs_repair behave differently?
(use xfs_repair -n if you test an old xfsprogs, to preserve this state
for debugging...)

Perhaps copying out or dumping the log w/ xfs_logprint would also help, 
maybe start with:

# xfs_logprint -t /dev/sdc1

-Eric

<Prev in Thread] Current Thread [Next in Thread>