annotate docs/man/man8/fzfs-copy-tree.rst @ 623:b74c65ceab96

Docs: Enhanced manuals
author Franz Glasner <fzglas.hg@dom66.de>
date Sun, 22 Sep 2024 19:07:26 +0200
parents 54c6eecbe53f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
1 .. -*- coding: utf-8; indent-tabs-mode: nil; -*-
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
2
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
3 fzfs-copy-tree
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
4 ==============
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
5
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
6 .. program:: fzfs copy-tree
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
7
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
8
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
9 Synopsis
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
10 --------
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
11
429
bbdb1ab0ea00 Implement "-k" option for "fzfs copy-tree" to keep received snapshots
Franz Glasner <fzglas.hg@dom66.de>
parents: 425
diff changeset
12 **fzfs copy-tree** [**-A**] [**-M** `mountpoint`] [**-k**] [**-n**] [**-u**] `source-dataset` `dest-dataset`
421
a571a30bcf8a Begin the implementation of "fzfs copy-tree"
Franz Glasner <hg@dom66.de>
parents: 420
diff changeset
13
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
14
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
15 Description
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
16 -----------
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
17
421
a571a30bcf8a Begin the implementation of "fzfs copy-tree"
Franz Glasner <hg@dom66.de>
parents: 420
diff changeset
18 Copy the ZFS filesystem or snapshot that is rooted at `source-dataset`
a571a30bcf8a Begin the implementation of "fzfs copy-tree"
Franz Glasner <hg@dom66.de>
parents: 420
diff changeset
19 and all descendent datasets to the destination rooted at `dest-dataset`.
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
20
623
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
21 The structure, content and properties of the filesystems are copied.
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
22 The properties `canmount` and `mountpoint` are handled specially.
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
23
431
7694275f2df1 Manpage: wording
Franz Glasner <fzglas.hg@dom66.de>
parents: 429
diff changeset
24 If `source-dataset` is a snapshot then all of its child datasets also must
424
a200c18603c9 Further work on "fzfs copy-tree"
Franz Glasner <fzglas.hg@dom66.de>
parents: 421
diff changeset
25 have a snapshot with the same snapshot name.
a200c18603c9 Further work on "fzfs copy-tree"
Franz Glasner <fzglas.hg@dom66.de>
parents: 421
diff changeset
26
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
27 `dest-dataset` must not exist already.
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
28
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
29 By default `canmount` is also copied. But this can be modified with
421
a571a30bcf8a Begin the implementation of "fzfs copy-tree"
Franz Glasner <hg@dom66.de>
parents: 420
diff changeset
30 option :option:`-A`.
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
31
623
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
32 The `mountpoint` property is not copied. Normally it will be inherited
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
33 as the ZFS rules for `dest-dataset` regarding its parent are applied.
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
34 This can be changed with :option:`-M mountpoint`. Child datasets always
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
35 will inherit their mountpoint from `dest-dataset`.
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
36
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
37
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
38 Options
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
39 -------
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
40
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
41 .. option:: -A
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
42
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
43 Unconditionally set the ZFS property `canmount=noauto` for all
623
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
44 created datasets in the destination tree, `unless` the source dataset
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
45 has `canmount=off`. If not given then `canmount` is copied from the
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
46 source to the destination.
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
47
622
54c6eecbe53f Docs: as per the Sphinx docs: option argument names should be enclosed in angle brackets
Franz Glasner <fzglas.hg@dom66.de>
parents: 431
diff changeset
48 .. option:: -M <mountpoint>
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
49
623
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
50 Set the `mountpoint` property for the destination root `dest-dataset`
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
51 to `mountpoint`. All children will be set to inherit it.
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
52
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
53 If not given then the mountpoint will we inherited by normal ZFS
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
54 inheritance from the destination's parent.
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
55
429
bbdb1ab0ea00 Implement "-k" option for "fzfs copy-tree" to keep received snapshots
Franz Glasner <fzglas.hg@dom66.de>
parents: 425
diff changeset
56 .. option:: -k
bbdb1ab0ea00 Implement "-k" option for "fzfs copy-tree" to keep received snapshots
Franz Glasner <fzglas.hg@dom66.de>
parents: 425
diff changeset
57
bbdb1ab0ea00 Implement "-k" option for "fzfs copy-tree" to keep received snapshots
Franz Glasner <fzglas.hg@dom66.de>
parents: 425
diff changeset
58 When copying from a snapshot source a corresponding snapshot will be
bbdb1ab0ea00 Implement "-k" option for "fzfs copy-tree" to keep received snapshots
Franz Glasner <fzglas.hg@dom66.de>
parents: 425
diff changeset
59 copied to the target dataset. By default this snapshot will be
bbdb1ab0ea00 Implement "-k" option for "fzfs copy-tree" to keep received snapshots
Franz Glasner <fzglas.hg@dom66.de>
parents: 425
diff changeset
60 deleted. With this option this snapshot is kept.
bbdb1ab0ea00 Implement "-k" option for "fzfs copy-tree" to keep received snapshots
Franz Glasner <fzglas.hg@dom66.de>
parents: 425
diff changeset
61
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
62 .. option:: -n
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
63
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
64 Dry-run. Do not really create and copy datasets but show what would
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
65 be done.
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
66
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
67 .. option:: -u
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
68
623
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
69 Do not mount the copied datasets automatically when they are created.
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
70
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
71
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
72 Implementation Notes
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
73 --------------------
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
74
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
75 The current implementation uses :manpage:`zfs-send(8)`
b74c65ceab96 Docs: Enhanced manuals
Franz Glasner <fzglas.hg@dom66.de>
parents: 622
diff changeset
76 and :manpage:`zfs-receive(8)` to implement the actual copying.
420
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
77
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
78
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
79 Environment
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
80 -----------
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
81
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
82 All environment variables that affect :command:`zfs` are effective also.
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
83
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
84
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
85 See Also
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
86 --------
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
87
bf0d63c8e682 Begin fzfs-copy-tree: man page structure done
Franz Glasner <fzglas.hg@dom66.de>
parents:
diff changeset
88 :manpage:`fzfs(8)`, :manpage:`fzfs-create-tree(8)`