---
name: "mfshdd.cfg"
section: "5"
platform: "linux"
package: "moosefs"
version: "4.59.2-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/mfshdd.cfg"
---

# mfshdd.cfg(5)

list of MooseFS storage directories for mfschunkserver

## NAME

mfshdd.cfg - list of MooseFS storage directories for **mfschunkserver**

## DESCRIPTION

The file **mfshdd.cfg** contains list of directories (mountpoints) used for MooseFS storage.

### SYNTAX

Syntax is:

- \[**\***\|**\<**\|**\>**\|**~**\]*PATH* \[*SPACE OPTIONS*\]

  Lines starting with **#** character are ignored as comments.

Path can be prefixed with one or more special characters. These characters work as additional options.

- **\***

  means this directory (hard drive) is "marked for removal"  and all data will be replicated to other hard drives, usually on other chunkservers

- **\<**

  means that all data from this hard drive should be moved to other local hard drives

- **\>**

  means that all data from other local hard drives should be moved to this hard drive

- **~**

  means that significant (more than 10% in less than a minute) change of total blocks count will not mark this drive as damaged (useful for compressed filesystems)

*PATH* is path to the mounting point of storage directory, usually a single hard drive.

*SPACE OPTIONS* allow to define limits in used space and alter disk usage reporting. A *SPACE OPTION* can be:

-

  a positive space limit, indicating a space limit definition (i.e. only this amount of space on the indicated path should be used for chunk storage)

-

  a negative space limit, indicating a reserved space definition (i.e. at least this amount of space should always be left free on the indicated path)

-

  an equals '=' sign, optionally followed by a space limit indicator

Space limit can be either a defined amount of space (format: \[0-9\]\*(.\[0-9\]\*)?(\[kMGTPE\]\|\[KMGTPE\]i)?B?) or a percent of total device size.

An equals sign indicates, that a disk is "shared" with another process  (either another chunk server process or an unrelated process) and the amount of space used on the  disk is not necessarily indicative of the amount of space used by chunks. Additionally, an indicator of a space limit can be defined.  Percent says how many percent of the available disk space should be considered as available for the chunkserver.  Size says how much exact space should be considered available for the chunkserver. If the percent or space are negative, then we define the unavailable amount of space instead.

The presence or absence of *SPACE OPTION* changes the way chunk server calculates available  and used space on a given path.

Let's define 3 base values:\
 total\_hdd - total device size, as returned by statvfs\
 avail\_hdd - total available space, as returned by statvfs\
 calc\_size - used space (sum of chunk's disk usage)

When there is no *SPACE OPTION* defined then total and available space are reported as follows:

\- reported total = total\_hdd\
 \- reported avail = avail\_hdd

Otherwise available space is calculated using formulas:

1\. With constant reserved space (negative space limit -X)\
 \- reported avail = total\_hdd - X - calc\_size (or zero if X + calc\_size \> total\_hdd)

2\. With perecent of reserved space (negative space limit -X%)\
 \- reported avail = total\_hdd - total\_hdd\*X/100 - calc\_size (or zero if total\_hdd\*X/100 + calc\_size \> total\_hdd)

3\. With constant space limit (positive space limit X)\
 \- reported avail = X - calc\_size (or zero if calc\_size \> X)

4\. With percent space limit (positive space limit X%)\
 \- reported avail = total\_hdd\*X/100 - calc\_size (or zero if calc\_size \> total\_hdd\*X/100)

5\. With shared space indicator (= sign)\
 \- reported avail = avail\_hdd

6\. With shared space indicator and space indicator (=X)\
 \- reported avail = X (or avail\_hdd if avail\_hdd \< X)

7\. With shared space indicator and percent indicator (=X%)\
 \- reported avail = avail\_hdd\*X/100

8\. With shared space indicator and negative space indicator (=-X)\
 \- reported avail = avail\_hdd - X (or 0, if X\>avail\_hdd)

9\. With shared space indicator and negative percent indicator (=-X%)\
 \- reported avail = avail\_hdd - avail\_hdd\*X/100

In all those cases total space is calculated as:\
 \- reported total = reported avail + calc\_size

## COPYRIGHT

Copyright (C) 2026 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 this program; if not, see \<https://www.gnu.org/licenses/\>.

## SEE ALSO

[**mfschunkserver**(8)](/mfschunkserver/8.md), [**mfschunkserver.cfg**(5)](/mfschunkserver.cfg/5.md)
