mfsdiagtools(1)

NAME
mfsdiagtools - MooseFS diagnostic tools

SYNOPSIS
mfscheckfile [-?] [-n|-h|-H|-k|-m|-g] FILE...

mfsfileinfo [-?] [-n|-h|-H|-k|-m|-g] [-q|-c|-s] [-p] [-w] FILE...

mfsfilerepair [-?] [-n|-h|-H|-k|-m|-g] [-d] FILE...

mfsdirinfo [-?] [-n|-h|-H|-k|-m|-g] [-i|-d|-f|-c|-l|-s|-r] [-p] OBJECT...

mfsfilepaths [-?] OBJECT|INODE...

DESCRIPTION
mfscheckfile checks and prints number of chunks and number of chunk copies belonging to specified file(s). It can be used on any file, included deleted (trash).

mfsfileinfo prints location (chunkserver host and port) of each chunk copy belonging to specified file(s). It can be used on any file, including deleted (trash). Option -q turns on quick mode (only number of EC parts or valid copies). Option -c turns on receiving chunk checksums from chunkservers, and finally -s turns on calculating file signature (from received checksums). Option -p displays path to chunk file on chunkserver for each chunk. Option -w displays only "wrong" (invalid, missing, wrong version) chunks.

mfsfilerepair deals with broken files (those which cause I/O errors on read operations) to make them partially readable. In case of chunk version mismatch, it sets chunk version known to mfsmaster to highest one found on chunkservers. In case there is no available copy of a chunk (all copies are invalid or missing), the chunk is marked as "read-as-zeros" (read operation will return zeros, write operation will fail). When/if a chunkserver with the missing chunk connects, the file will be fully available again. If option -d is used then the missing/invalid chunk is permanently zeroed. Note: it is advisable to make a copy (not a snapshot) of any file repaired with this tool, especially if there is a possibility that chunkservers with more existing chunks will be connected to the system in the future (for example after an outage). This it to prevent mismatched content of chunks with the same version in a file.

mfsdirinfo is extended, MooseFS-specific equivalent of du -s command. It prints a summary for each specified object (single file or directory tree). If you only want to see one parameter, then add one of show options (see SHOW OPTIONS). By default it returns data from internal master counters (very fast, but not precise). All repeated nodes (hard links) and chunks (snapshots) are counted multiple times. To count stats more preciselly you can use -p switch which turns on slow, recursive procedure. In this mode nodes and chunks are counted only once and the system uses current number of chunk copies instead of goal/labels. System administrators might consider using mfsmetadirinfo (see mfsmetadirinfo(8)).

mfsfilepaths tool can be used to find all occurrences (hard links) of given file in filesystem. It can also be used to find a file with given inode number. In case of searching for inode number, the tool has to be run in mfs mounted directory.

GENERAL OPTIONS
Most MooseFS tools use -n, -h, -H, -k, -m and -g options to select format of printed numbers. -n causes to print exact numbers, -h uses binary prefixes (Ki, Mi, Gi as 2^10, 2^20 etc.) while -H uses SI prefixes (k, M, G as 10^3, 10^6 etc.). -k, -m and -g show plain numbers respectivaly in kibis (binary kilo - 1024), mebis (binary mega - 1024^2) and gibis (binary giga - 1024^3). The same can be achieved by setting MFSHRFORMAT environment variable to: 0 (exact numbers), 1 or h (binary prefixes), 2 or H (SI prefixes), 3 or h+ (exact numbers and binary prefixes), 4 or H+ (exact numbers and SI prefixes). The default is to print just exact numbers.

Option -? displays short usage message.

SHOW OPTIONS

-i  show number of inodes

-d  show number of directories

-f  show number of files

-c  show number of chunks

-l  show length (sum of file lengths)

-s  show size (sum of chunks lenghts)

-r  show realsize (estimated hdd usagesimple - usually size multiplied by current goal)

REPORTING BUGS
Report bugs to <bugs@moosefs.com>.

COPYRIGHT
Copyright (C) 2025 Jakub Kruszona-Zawadzki, Saglabs SA

This file is part of MooseFS.

MooseFS is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2 (only).

MooseFS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with MooseFS; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA or visit http://www.gnu.org/licenses/gpl-2.0.html

SEE ALSO
mfsmount(8), mfstools(1), mfsmetadirinfo(8)