Name Modified Size Downloads / Week Status
3.0.92 2017-04-28 99 weekly downloads
3.0.91 2017-04-07 0
3.0.90 2017-04-04 0
3.0.88 2017-02-09 0
3.0.86 2016-12-01 0
3.0.84 2016-10-11 0
2.0.91 2016-09-28 0
3.0.81 2016-08-02 0
3.0.80 2016-07-15 0
3.0.79 2016-07-06 0
3.0.78 2016-06-14 0
3.0.77 2016-06-08 0
2.0.89 2016-04-28 0
2.0.88 2016-03-03 0
2.0.87 2016-02-23 0
2.0.86 2016-02-23 0
2.0.85 2016-02-12 0
2.0.84 2016-02-01 0
2.0.83 2016-01-13 0
2.0.81 2015-11-23 0
2.0.80 2015-11-23 0
2.0.77 2015-11-23 0
2.0.76 2015-11-23 0
2.0.74 2015-11-23 0
2.0.73 2015-11-23 0
2.0.72 2015-11-23 0
NEWS 2017-04-28 59.1 kB 0
README.md 2017-04-04 7.2 kB 0
LICENSE 2015-03-25 17.7 kB 0
Totals: 29 Items   83.9 kB 9

MooseFS logo

MooseFS - A Petabyte Distributed File System

MooseFS is a Petabyte Open Source Network Distributed File System. It is easy to deploy and maintain, fault tolerant, highly performing, easily scalable, POSIX compliant.

MooseFS spreads data over several physical commodity servers, which are visible to the user as one big volume. For standard file operations MooseFS acts like ordinary Unix-like file system:

  • A hierarchical structure (directory tree)
  • Stores POSIX file attributes (permissions, last access and modification times, etc.)
  • Supports ACLs
  • Supports POSIX and BSD locks
  • Supports special files (block and character devices, pipes and sockets)
  • Symbolic links (file names pointing to target files, not necessarily on MooseFS) and hard links (different names of files which refer to the same data on MooseFS)

Distinctive MooseFS features:

  • High reliability - configurable number of files copies are stored on separate servers
  • No Single Point of Failure - all hardware and software components may be redundant
  • Parallel data operations - many clients can access many files concurrently
  • Capacity can be dynamically expanded by simply adding new computers/disks on the fly
  • Retired hardware may be removed on the fly
  • Deleted files are retained for a configurable period of time (a file system level "trash bin")
  • Coherent, "atomic" snapshots of files, even while the file is being written/accessed
  • Access to the file system can be limited based on IP address and/or password (similarly as in NFS)
  • Data tiering - supports different storage policies for different files/directories
  • Efficient, pure C implementation
  • Ethernet support

Supported platforms

MooseFS can be installed on any POSIX compliant operating system including different Linux distributions, FreeBSD, OS X:

  • Ubuntu
  • Debian
  • RHEL/CentOS
  • OpenSUSE
  • FreeBSD
  • MacOS X
  • Raspberry Pi 3

MooseFS Client uses FUSE.

There is a separate MooseFS Client for MS Windows available, built on top of Dokany.

Getting started

You can install MooseFS using your favorite package manager on one of the following platforms using officially supported repositories:

  • Ubuntu 10/12/14
  • Debian 5/6/7/8
  • RHEL/CentOS versions 6/7
  • OpenSUSE 12
  • FreeBSD 9.3/10/11 (FreeBSD 11 is supported since MooseFS 3.0.88)
  • MacOS X 10.9/10.10/10.11
  • Raspberry Pi 3

Minimal set of packages, which are needed to run MooseFS:

  • moosefs-master MooseFS Master Server for metadata servers,
  • moosefs-chunkserver MooseFS Chunkserver for data storage servers,
  • moosefs-client MooseFS Client - client side package to mount the filesystem.

Source code

Feel free to download source code either from GitHub code repository or from our website archives.

Building MooseFS on Linux can be easily done by running ./linux_build.sh.

Minimal setup

Just three steps to have MooseFS up and running:

1. Install at least one Master Server

  1. Install moosefs-master package
  2. Prepare default config (as root): cd /etc/mfs cp mfsmaster.cfg.sample mfsmaster.cfg cp mfsexports.cfg.sample mfsexports.cfg
  3. Prepare the metadata file (as root): cd /var/lib/mfs cp metadata.mfs.empty metadata.mfs chown mfs:mfs metadata.mfs rm metadata.mfs.empty
  4. Run Master Server (as root): mfsmaster start
  5. Make this machine visible under mfsmaster name (e.g. by adding a DNS entry or adding it in /etc/hosts on all servers)

2. Install at least two Chunkservers

  1. Install moosefs-chunkserver package
  2. Prepare default config (as root): cd /etc/mfs cp mfschunkserver.cfg.sample mfschunkserver.cfg cp mfshdd.cfg.sample mfshdd.cfg
  3. At the end of mfshdd.cfg file make one or more entries containing paths to HDDs / partitions designated for storing chunks, e.g.: /mnt/chunks1 /mnt/chunks2 /mnt/chunks3 It is recommended to use XFS as an underlying filesystem for disks designated to store chunks.

  4. Change the ownership and permissions to mfs:mfs to above mentioned locations, e.g.: chown mfs:mfs /mnt/chunks1 /mnt/chunks2 /mnt/chunks3 chmod 770 /mnt/chunks1 /mnt/chunks2 /mnt/chunks3

  5. Start the Chunkserver: mfschunkserver start

Repeat steps above for second (third, ...) Chunkserver.

3. Client side: mount MooseFS filesystem

  1. Install moosefs-client fuse libfuse2 packages
  2. Mount MooseFS (as root): mkdir /mnt/mfs mount -t moosefs mfsmaster: /mnt/mfs or: mfsmount -H mfsmaster /mnt/mfs

  3. You can also add an /etc/fstab entry to mount MooseFS during the system boot: mfsmaster: /mnt/mfs moosefs defaults,mfsdelayedinit 0 0

There is bit more configuration parameters available but most of them may stay with defaults. We do our best to keep MooseFS easy to deploy and maintain.

MooseFS, for testing purposes, can be installed even on one machine!

Additional tools

Setting up moosefs-cli or moosefs-cgi both with moosefs-cgiserv is also recommended - it gives you a possibility to monitor the cluster online:

  1. Install moosefs-cli moosefs-cgi moosefs-cgiserv packages (they are typically set up on the Master Server)
  2. Run MooseFS CGI Server (as root): mfscgiserv start
  3. Open http://mfsmaster:9425 in your web browser

It is also strongly recommended to set up at least one Metalogger on a different machine than Master Server (e.g. on one of Chunkservers). Metalogger constantly synchronizes and backups the metadata:

  1. Install moosefs-metalogger package
  2. Prepare default config (as root): cd /etc/mfs cp mfsmetalogger.cfg.sample mfsmetalogger.cfg
  3. Run Metalogger (as root): mfsmetalogger start

Refer to installation guides for more details.

Some facts

Contact us


Copyright (c) 2017 Jakub Kruszona-Zawadzki, Core Technology Sp. z o.o.

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.

Source: README.md, updated 2017-04-04

Thanks for helping keep SourceForge clean.

Screenshot instructions:
Red Hat Linux   Ubuntu

Click URL instructions:
Right-click on ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Briefly describe the problem (required):

Upload screenshot of ad (required):
Select a file, or drag & drop file here.

Please provide the ad click URL, if possible:

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks