unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (Debian-3.1)
Page:
Section:
Apropos / Subsearch:
optional field

xfs_check(8)                System Manager's Manual               xfs_check(8)



NAME
       xfs_check - check XFS filesystem consistency

SYNOPSIS
       xfs_check [ -i ino ] ... [ -b bno ] ...
                 [ -s ] [ -v ] [ -l logdev ] xfs_special

       xfs_check -f [ -i ino ] ... [ -b bno ] ...
                 [ -s ] [ -v ] [ -l logdev ] file

DESCRIPTION
       xfs_check  checks  whether an XFS filesystem is consistent.  It is nor-
       mally run only when there is reason to believe that the filesystem  has
       a  consistency  problem.   The filesystem to be checked is specified by
       the xfs_special argument, which should be the disk or volume device for
       the filesystem.  Filesystems stored in files can also be checked, using
       the -f flag.  The filesystem should normally be unmounted or  read-only
       during  the  execution  of xfs_check.  Otherwise, spurious problems are
       reported.

       The options to xfs_check are:

       -f       Specifies that the special device is actually a file (see  the
                mkfs.xfs  -d file option).  This might happen if an image copy
                of a filesystem has been made into an ordinary file.

       -l       Specifies the  device  special  file  where  the  filesystem's
                external log resides.  Only for those filesystems which use an
                external log.  See the mkfs.xfs -l option, and refer to xfs(5)
                for a detailed description of the XFS log.

       -s       Specifies  that only serious errors should be reported.  Seri-
                ous errors are those that make it  impossible  to  find  major
                data structures in the filesystem.  This option can be used to
                cut down the amount of output when there is a serious problem,
                when  the  output might make it difficult to see what the real
                problem is.

       -v       Specifies verbose output; it is impossibly long for a  reason-
                ably-sized  filesystem.   This option is intended for internal
                use only.

       -i ino   Specifies  verbose  behavior  for  a  specific   inode.    For
                instance,  it  can be used to locate all the blocks associated
                with a given inode.

       -b bno   Specifies verbose behavior for a  specific  filesystem  block.
                For  instance,  it  can  be  used to determine what a specific
                block is used for.  The block number is a "file  system  block
                number".   Conversion  between  disk addresses (i.e. addresses
                reported by xfs_bmap) and file system  blocks  may  be  accom-
                plished using xfs_db's convert command.

       Any  non-verbose output from xfs_check means that the filesystem has an
       inconsistency.   The  filesystem   can   be   repaired   using   either
       xfs_repair(8)  to  fix  the filesystem in place, or by using xfsdump(8)
       and mkfs.xfs(8) to dump the filesystem, make a new filesystem, then use
       xfsrestore(8)  to  restore the data onto the new filesystem.  Note that
       xfsdump may fail on a corrupt filesystem.  However, if  the  filesystem
       is mountable, xfsdump can be used to try and save important data before
       repairing the filesystem with xfs_repair.  If  the  filesystem  is  not
       mountable though, xfs_repair is the only viable option.

DIAGNOSTICS
       Under  one circumstance, xfs_check unfortunately might dump core rather
       than produce useful output.  If the filesystem is completely corrupt, a
       core dump might be produced instead of the message
           xxx is not a valid filesystem

       If  the  filesystem is very large (has many files) then xfs_check might
       run out of memory.  In this case the message
           out of memory
       is printed.

       The following is a description of the  most  likely  problems  and  the
       associated  messages.   Most of the diagnostics produced are only mean-
       ingful with an understanding of the structure of the filesystem.

       agf_freeblks n, counted m in ag a
              The freeblocks count in the allocation group header for  alloca-
              tion group a doesn't match the number of blocks counted free.

       agf_longest n, counted m in ag a
              The longest free extent in the allocation group header for allo-
              cation group a doesn't match the longest free  extent  found  in
              the allocation group.

       agi_count n, counted m in ag a
              The  allocated  inode  count  in the allocation group header for
              allocation group a doesn't match the number of inodes counted in
              the allocation group.

       agi_freecount n, counted m in ag a
              The  free inode count in the allocation group header for alloca-
              tion group a doesn't match the number of inodes counted free  in
              the allocation group.

       block a/b expected inum 0 got i
              The  block  number is specified as a pair (allocation group num-
              ber, block in the allocation group).  The block is used multiple
              times  (shared),  between multiple inodes.  This message usually
              follows a message of the next type.

       block a/b expected type unknown got y
              The block is used multiple times (shared).

       block a/b type unknown not expected
              The block is unaccounted for (not in the  freelist  and  not  in
              use).

       link count mismatch for inode nnn (name xxx), nlink m, counted n
              The inode has a bad link count (number of references in directo-
              ries).

       rtblock b expected inum 0 got i
              The block is used  multiple  times  (shared),  between  multiple
              inodes.   This  message  usually  follows  a message of the next
              type.

       rtblock b expected type unknown got y
              The real-time block is used multiple times (shared).

       rtblock b type unknown not expected
              The real-time block is unaccounted for (not in the freelist  and
              not in use).

       sb_fdblocks n, counted m
              The  number  of  free  data  blocks  recorded  in the superblock
              doesn't match the number counted free in the filesystem.

       sb_frextents n, counted m
              The number of free real-time extents recorded in the  superblock
              doesn't match the number counted free in the filesystem.

       sb_icount n, counted m
              The  number  of  allocated  inodes  recorded  in  the superblock
              doesn't match the number allocated in the filesystem.

       sb_ifree n, counted m
              The number of free inodes recorded  in  the  superblock  doesn't
              match the number free in the filesystem.

SEE ALSO
       mkfs.xfs(8),  xfsdump(8),  xfsrestore(8), xfs_ncheck(8), xfs_repair(8),
       xfs(5).



                                                                  xfs_check(8)