mfsbdev.cfg(5)

πŸ“¦
version 4.59.2 Β· 3 versions
, in arch rolling, nixos 26.05, nixpkgs unstable, ubuntu stonking

πŸŽ€ mfsbdev.cfg(5) πŸŽ€

okay bestie so this is a page from the MooseFS manual, and it's all about mfsbdev.cfg β€” the config file for the MooseFS block device daemon. yes we're doing config files today, sit down, grab a boba, it's gonna be fun πŸ’–


✨ NAME ✨

mfsbdev.cfg β€” the MooseFS block device daemon config file, fr fr


πŸ’… DESCRIPTION πŸ’…

so this is the config file that the mfbsdev tool can read β€” but ONLY if you passed the -i option along with the start command. it's giving "opt-in only, no walk-ins" πŸ’€

inside, you've got definitions of block devices, one per line, for every device that should get initialized when the mfsbdev tool starts up. one line = one device. periodt.

⚠️ bestie, listen: it is strongly recommended that you do NOT create this file from scratch. like, please don't. instead, the move is to create all your devices with the mfsbdev command and its parameters (it's all described in mfsbdev(8)), then list them with mfsbdev list -i, and use that output to build your config file. slay ✨

the description below exists so you understand what's actually in the config file and can tweak it if you need to. adjust if necessary, queen. πŸ‘‘


🌸 FORMAT 🌸

empty lines? ignored. lines starting with a semicolon (;) or a hash (#)? also ignored. we love a low-effort comment. πŸ™ˆ

every other line needs to match this format exactly:

path [ device|* [ linkname|* [ size|* [ bsize|* [ flags ]]]]]

and here's the breakdown, bestie:

  • path β€” this one is obligatory, no skipping. it's the path to a file on MooseFS that'll be used as the block device. heads up: it should be relative to the MooseFS root, or to the path you defined with the -S option when starting mfsbdev β€” NOT your local file system root. do not confuse the two, i'm begging 😭
  • device β€” optional. if you supply it, it should point to a network block device path (eg. /dev/nbd1). if you don't supply it, or you put *, then the first available block device gets used. first come first served energy 🫢
  • linkname β€” optional. if you supply it, it's the name of the symbolic link created in /dev/mfs, pointing at the network block device that the map command created. if you don't supply it, or you put *, the default link name is used.
  • size β€” optional. if you supply it, that's your block device size. if you don't supply it, or you put *, the size of the file named by the first parameter is used instead. it's giving "whatever the file says, i trust her" πŸ’œ
  • bsize β€” optional. if you supply it, that's your block size. if you don't supply it, or you put *, then a 4096 byte block is used. default queen. ✨
  • flags β€” optional, and here's where it gets juicy. these are the flags, separated by comma if you've got more than one:
    • ro β€” read only device
    • rw β€” read/write device
    • lock β€” device requires an appropriate type of lock (shared for ro, exclusive for rw)
    • nolock β€” device does not require a lock (it'll try to obtain it, but it will ignore failure)

if you supply nothing at all, the default of rw, lock is assumed. and here's the chaotic part: if two conflicting flags are supplied (i.e. ro and rw, or lock and nolock) then the last one wins. no cap. last flag standing takes the crown πŸ‘‘


🌈 EXAMPLES 🌈

✨ read/write devices, all the defaults ✨

create read/write devices with default block device path, default linkname, using file size as device size, with default block size:

my_devices/device1

my_devices/device2 * * * * rw

look at that second one just casually being all asterisks and rw β€” main character energy honestly ⭐

πŸ’– read only devices, specific parameters πŸ’–

create read only devices with specific parameters:

my_devices/device1 /dev/nbd3 mfsdevice1 67108864 1024 ro

my_devices/device2 /dev/nbd7 mfsdevice2 64MiB 1024 ro,nolock

note the 64MiB β€” we're flexible with sizes here, iconic πŸ¦‹


😭 REPORTING BUGS 😭

found a bug? report it to <bugs@moosefs.com>. they want to know. do it. 🫢


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 🌟


and that's the whole page bestie πŸ’… this was MooseFS 4.59.2-1, from May 2026 β€” go forth and configure responsibly, mwah πŸŽ€πŸ’–βœ¨

πŸ“¦ where this page comes from