btrfs-send

Content

 

Data

license:
Version:
Developer / owner:

Short description:

Manual page and help for the btrfs-send linux command. The command generates a series of instructions that describe the changes between the snapshots of the two btrfs sub-volumes. The generated stream can be used with the btrfs receive command to copy the sent file system snapshot to another file system. The command works in two modes: full and incremental.

 

 

Man page output

man btrfs-send
BTRFS-SEND(8)                         Btrfs Manual                        BTRFS-SEND(8)

NAME
       btrfs-send - generate a stream of changes between two subvolume snapshots

SYNOPSIS
       btrfs send [-ve] [-p <parent>] [-c <clone-src>] [-f <outfile>] <subvol>
       [<subvol>...]

DESCRIPTION
       This command will generate a stream of instructions that describe changes
       between two subvolume snapshots. The stream can be consumed by the btrfs receive
       command to replicate the sent snapshot on a different filesystem. The command
       operates in two modes: full and incremental.

       All snapshots involved in one send command must be read-only, and this status
       cannot be changed as long as there’s a running send operation that uses the
       snapshot.

       In the full mode, the entire snapshot data and metadata will end up in the
       stream.

       In the incremental mode (options -p and -c), previously sent snapshots that are
       available on both the sending and receiving side can be used to reduce the
       amount of information that has to be sent to reconstruct the sent snapshot on a
       different filesystem.

       The -p <parent> option can be omitted when -c <clone-src> options are given, in
       which case btrfs send will determine a suitable parent from among the clone
       sources.

       You must not specify clone sources unless you guarantee that these snapshots are
       exactly in the same state on both sides—both for the sender and the receiver.

       Options

       -e
           if sending multiple subvolumes at once, use the new format and omit the end
           cmd marker in the stream separating the subvolumes

       -p <parent>
           send an incremental stream from parent to subvol

       -c <clone-src>
           use this snapshot as a clone source for an incremental send (multiple
           allowed)

       -f <outfile>
           output is normally written to standard output so it can be, for example,
           piped to btrfs receive. Use this option to write it to a file instead.

       --no-data
           send in NO_FILE_DATA mode

           The output stream does not contain any file data and thus cannot be used to
           transfer changes. This mode is faster and is useful to show the differences
           in metadata.

       -v|--verbose
           enable verbose output, print generated commands in a readable form, (each
           occurrence of this option increases the verbosity level)

       -q|--quiet
           suppress all messages except errors

EXIT STATUS
       btrfs send returns a zero exit status if it succeeds. Non zero is returned in
       case of failure.

AVAILABILITY
       btrfs is part of btrfs-progs. Please refer to the btrfs wiki
       http://btrfs.wiki.kernel.org for further details.

SEE ALSO
       mkfs.btrfs(8), btrfs-receive(8)

Btrfs v4.20.1                          01/23/2019                         BTRFS-SEND(8)

 

 

Help output

sudo btrfs send
usage: btrfs send [-ve] [-p <parent>] [-c <clone-src>] [-f <outfile>] <subvol> [<subvol>...]

    Send the subvolume(s) to stdout.

    Sends the subvolume(s) specified by <subvol> to stdout.
    <subvol> should be read-only here.
    By default, this will send the whole subvolume. To do an incremental
    send, use '-p <parent>'. If you want to allow btrfs to clone from
    any additional local snapshots, use '-c <clone-src>' (multiple times
    where applicable). You must not specify clone sources unless you
    guarantee that these snapshots are exactly in the same state on both
    sides, the sender and the receiver. It is allowed to omit the
    '-p <parent>' option when '-c <clone-src>' options are given, in
    which case 'btrfs send' will determine a suitable parent among the
    clone sources itself.
    

    -e               If sending multiple subvols at once, use the new
                     format and omit the end-cmd between the subvols.
    -p <parent>      Send an incremental stream from <parent> to
                     <subvol>.
    -c <clone-src>   Use this snapshot as a clone source for an 
                     incremental send (multiple allowed)
    -f <outfile>     Output is normally written to stdout. To write to
                     a file, use this option. An alternative would be to
                     use pipes.
    --no-data        send in NO_FILE_DATA mode, Note: the output stream
                     does not contain any file data and thus cannot be used
                     to transfer changes. This mode is faster and useful to
                     show the differences in metadata.
    -v|--verbose     enable verbose output to stderr, each occurrence of
                     this option increases verbosity
    -q|--quiet       suppress all messages, except errors

 

Related Content