mfssnapshots(1)

NAME
mfssnapshots - MooseFS snapshot tools

SYNOPSIS
mfsappendchunks [-?] [-s FROM:TO] SNAPSHOT_FILE FILE...

mfsmakesnapshot [-?] [-o|-c|-p] SOURCE_OBJECT... DESTINATION

mfsrmsnapshot [-?] [-f] OBJECT...

DESCRIPTION
mfsappendchunks (equivalent of mfssnapshot from MooseFS 1.5) appends a lazy copy of specified FILE(s) to specified SNAPSHOT_FILE ("lazy" means that creation of new chunks is delayed to the moment one copy is modified). IF SNAPSHOT_FILE does not exist, it is created. If multiple files are given, they are merged into one target file in such a way that each file begins at chunk (64MB) boundary; padding space is left empty. Optionally only slice of chunks can be appended (option -s). Slice definition is similar to Python: FROM is included, TO excluded, negative numbers mean backwards from the end. If FROM or TO is not specified then it means from the beginning or to the end of file respectively. See examples below.

mfsmakesnapshot makes a "real" snapshot (lazy copy, like in case of mfsappendchunks) of some object(s) or subtree (similarly to cp -r command). It's atomic with respect to each SOURCE_OBJECT argument separately. If DESTINATION points to already existing file, error will be reported unless -o (overwrite) option is given. If destination points to an already existing directory, snapshot is created inside this directory. Note: if SOURCE_OBJECT is a directory, it is copied as a whole; but if it's followed by trailing slash, only directory content is copied. When -c option is given then attributes of newly created files are more similar to those created by ordinary cp (without attribute preserving). Option -p preserves hardlinks in SOURCE (when two or more objects inside SOURCE are hardlinked to each other then in DESTINATION folder those objects will be hardlinked to each other as well).

mfsrmsnapshot removes objects created as a result of mfsmakesnapshot (similarly to rm -r, but much faster). For safety reasons objects created via mfsmakesnapshot have the snapshot attribute set (see mfseattr(1)) and only such objects can be removed using mfsrmsnapshot command. By default all files and directories inside specified directory must have this attribute set for the command to remove the whole directory; otherwise the command will not remove anything. This behavior can be overridden by -f option. With this option mfsrmsnapshot will remove only those files/directories that have snapshot attribute set and will leave everything else untouched.

  SLICES
FROM:TO for source file with chunks 0,1,2,...,N-1,N:

2:4 = chunks 2 and 3

3: = chunks 3,4,...,N

:5 = chunks 0,1,2,3,4

:-1 = chunks 0,1,2,3,...,N-1

-4:-2 = chunks N-3,N-2

OPTIONS
Option -? displays short usage message.

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), mfseattr(1)