man > btrfs-send(8)

BTRFS-SEND(8)                                   BTRFS                                  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 subvol‐
       ume  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. Read-only mount
       of the subvolume is not sufficient, there's no way to guarantee that there won't be any other
       writable mount of the same subvolume that would potentially write while send  would  be  run‐
       ning.

       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. For implications of
       changed read-write status of a received  snapshot  please  see  section  SUBVOLUME  FLAGS  in
       btrfs-subvolume(8).

       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.

       --proto <N>
              use send protocol version N

              The default is 1, which was the original protocol version. Version 2 encodes file data
              slightly  more  efficiently;  it is also required for sending compressed data directly
              (see --compressed-data). Version 2 requires at  least  btrfs-progs  6.0  on  both  the
              sender  and  receiver and at least Linux 6.0 on the sender. Passing 0 means to use the
              highest version supported by the running kernel.

       --compressed-data
              send data that is compressed on the filesystem directly without decompressing it

              If the receiver supports the BTRFS_IOC_ENCODED_WRITE ioctl (added in  Linux  6.0),  it
              can  also  write  it  directly without decompressing it.  Otherwise, the receiver will
              fall back to decompressing it and writing it normally.

              This requires protocol version 2 or higher. If  --proto  was  not  used,  then  --com‐
              pressed-data implies --proto 2.

       -q|--quiet
              (deprecated) alias for global -q option

       -v|--verbose
              (deprecated) alias for global -v option

       Global options

       -q|--quiet
              suppress all messages except errors

       -v|--verbose
              increase output verbosity, print generated commands in a readable form

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

AVAILABILITY
       btrfs   is   part   of   btrfs-progs.     Please    refer    to    the    documentation    at
       https://btrfs.readthedocs.io.

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


6.6.3                                       Mar 31, 2024                               BTRFS-SEND(8)
btrfs-send(8)
NAME SYNOPSIS DESCRIPTION
Options -e if sending multiple subvolumes at once, use the new format and omit the end cmd marker -p -c -f --no-data --compressed-data -q|--quiet -v|--verbose Global options -q|--quiet -v|--verbose
EXIT STATUS AVAILABILITY SEE ALSO

Generated by phpman v4.10.0-7-g98e9fd5 · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-09-15 22:55 @216.73.217.46
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 Transitional!Valid CSS!

^_top_^