]> git.proxmox.com Git - mirror_zfs.git/blob - man/man8/zfs-rename.8
FreeBSD: Add zfs_link_create() error handling
[mirror_zfs.git] / man / man8 / zfs-rename.8
1 .\"
2 .\" CDDL HEADER START
3 .\"
4 .\" The contents of this file are subject to the terms of the
5 .\" Common Development and Distribution License (the "License").
6 .\" You may not use this file except in compliance with the License.
7 .\"
8 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 .\" or https://opensource.org/licenses/CDDL-1.0.
10 .\" See the License for the specific language governing permissions
11 .\" and limitations under the License.
12 .\"
13 .\" When distributing Covered Code, include this CDDL HEADER in each
14 .\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 .\" If applicable, add the following below this CDDL HEADER, with the
16 .\" fields enclosed by brackets "[]" replaced with your own identifying
17 .\" information: Portions Copyright [yyyy] [name of copyright owner]
18 .\"
19 .\" CDDL HEADER END
20 .\"
21 .\" Copyright (c) 2009 Sun Microsystems, Inc. All Rights Reserved.
22 .\" Copyright 2011 Joshua M. Clulow <josh@sysmgr.org>
23 .\" Copyright (c) 2011, 2019 by Delphix. All rights reserved.
24 .\" Copyright (c) 2013 by Saso Kiselkov. All rights reserved.
25 .\" Copyright (c) 2014, Joyent, Inc. All rights reserved.
26 .\" Copyright (c) 2014 by Adam Stevko. All rights reserved.
27 .\" Copyright (c) 2014 Integros [integros.com]
28 .\" Copyright 2019 Richard Laager. All rights reserved.
29 .\" Copyright 2018 Nexenta Systems, Inc.
30 .\" Copyright 2019 Joyent, Inc.
31 .\"
32 .Dd March 16, 2022
33 .Dt ZFS-RENAME 8
34 .Os
35 .
36 .Sh NAME
37 .Nm zfs-rename
38 .Nd rename ZFS dataset
39 .Sh SYNOPSIS
40 .Nm zfs
41 .Cm rename
42 .Op Fl f
43 .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
44 .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
45 .Nm zfs
46 .Cm rename
47 .Fl p
48 .Op Fl f
49 .Ar filesystem Ns | Ns Ar volume
50 .Ar filesystem Ns | Ns Ar volume
51 .Nm zfs
52 .Cm rename
53 .Fl u
54 .Op Fl f
55 .Ar filesystem Ar filesystem
56 .Nm zfs
57 .Cm rename
58 .Fl r
59 .Ar snapshot Ar snapshot
60 .
61 .Sh DESCRIPTION
62 .Bl -tag -width ""
63 .It Xo
64 .Nm zfs
65 .Cm rename
66 .Op Fl f
67 .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
68 .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot
69 .Xc
70 .It Xo
71 .Nm zfs
72 .Cm rename
73 .Fl p
74 .Op Fl f
75 .Ar filesystem Ns | Ns Ar volume
76 .Ar filesystem Ns | Ns Ar volume
77 .Xc
78 .It Xo
79 .Nm zfs
80 .Cm rename
81 .Fl u
82 .Op Fl f
83 .Ar filesystem
84 .Ar filesystem
85 .Xc
86 Renames the given dataset.
87 The new target can be located anywhere in the ZFS hierarchy, with the exception
88 of snapshots.
89 Snapshots can only be renamed within the parent file system or volume.
90 When renaming a snapshot, the parent file system of the snapshot does not need
91 to be specified as part of the second argument.
92 Renamed file systems can inherit new mount points, in which case they are
93 unmounted and remounted at the new mount point.
94 .Bl -tag -width "-a"
95 .It Fl f
96 Force unmount any file systems that need to be unmounted in the process.
97 This flag has no effect if used together with the
98 .Fl u
99 flag.
100 .It Fl p
101 Creates all the nonexistent parent datasets.
102 Datasets created in this manner are automatically mounted according to the
103 .Sy mountpoint
104 property inherited from their parent.
105 .It Fl u
106 Do not remount file systems during rename.
107 If a file system's
108 .Sy mountpoint
109 property is set to
110 .Sy legacy
111 or
112 .Sy none ,
113 the file system is not unmounted even if this option is not given.
114 .El
115 .It Xo
116 .Nm zfs
117 .Cm rename
118 .Fl r
119 .Ar snapshot Ar snapshot
120 .Xc
121 Recursively rename the snapshots of all descendent datasets.
122 Snapshots are the only dataset that can be renamed recursively.
123 .El
124 .
125 .Sh EXAMPLES
126 .\" These are, respectively, examples 10, 15 from zfs.8
127 .\" Make sure to update them bidirectionally
128 .Ss Example 1 : No Promoting a ZFS Clone
129 The following commands illustrate how to test out changes to a file system, and
130 then replace the original file system with the changed one, using clones, clone
131 promotion, and renaming:
132 .Bd -literal -compact -offset Ds
133 .No # Nm zfs Cm create Ar pool/project/production
134 populate /pool/project/production with data
135 .No # Nm zfs Cm snapshot Ar pool/project/production Ns @ Ns Ar today
136 .No # Nm zfs Cm clone Ar pool/project/production@today pool/project/beta
137 make changes to /pool/project/beta and test them
138 .No # Nm zfs Cm promote Ar pool/project/beta
139 .No # Nm zfs Cm rename Ar pool/project/production pool/project/legacy
140 .No # Nm zfs Cm rename Ar pool/project/beta pool/project/production
141 once the legacy version is no longer needed, it can be destroyed
142 .No # Nm zfs Cm destroy Ar pool/project/legacy
143 .Ed
144 .
145 .Ss Example 2 : No Performing a Rolling Snapshot
146 The following example shows how to maintain a history of snapshots with a
147 consistent naming scheme.
148 To keep a week's worth of snapshots, the user destroys the oldest snapshot,
149 renames the remaining snapshots, and then creates a new snapshot, as follows:
150 .Bd -literal -compact -offset Ds
151 .No # Nm zfs Cm destroy Fl r Ar pool/users@7daysago
152 .No # Nm zfs Cm rename Fl r Ar pool/users@6daysago No @ Ns Ar 7daysago
153 .No # Nm zfs Cm rename Fl r Ar pool/users@5daysago No @ Ns Ar 6daysago
154 .No # Nm zfs Cm rename Fl r Ar pool/users@4daysago No @ Ns Ar 5daysago
155 .No # Nm zfs Cm rename Fl r Ar pool/users@3daysago No @ Ns Ar 4daysago
156 .No # Nm zfs Cm rename Fl r Ar pool/users@2daysago No @ Ns Ar 3daysago
157 .No # Nm zfs Cm rename Fl r Ar pool/users@yesterday No @ Ns Ar 2daysago
158 .No # Nm zfs Cm rename Fl r Ar pool/users@today No @ Ns Ar yesterday
159 .No # Nm zfs Cm snapshot Fl r Ar pool/users Ns @ Ns Ar today
160 .Ed