mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-26 19:19:32 +03:00
658fb8020f
Property to allow sets of features to be specified; for compatibility with specific versions / releases / external systems. Influences the behavior of 'zpool upgrade' and 'zpool create'. Initial man page changes and test cases included. Brief synopsis: zpool create -o compatibility=off|legacy|file[,file...] pool vdev... compatibility = off : disable compatibility mode (enable all features) compatibility = legacy : request that no features be enabled compatibility = file[,file...] : read features from specified files. Only features present in *all* files will be enabled on the resulting pool. Filenames may be absolute, or relative to /etc/zfs/compatibility.d or /usr/share/zfs/compatibility.d (/etc checked first). Only affects zpool create, zpool upgrade and zpool status. ABI changes in libzfs: * New function "zpool_load_compat" to load and parse compat sets. * Add "zpool_compat_status_t" typedef for compatibility parse status. * Add ZPOOL_PROP_COMPATIBILITY to the pool properties enum * Add ZPOOL_STATUS_COMPATIBILITY_ERR to the pool status enum An initial set of base compatibility sets are included in cmd/zpool/compatibility.d, and the Makefile for cmd/zpool is modified to install these in $pkgdatadir/compatibility.d and to create symbolic links to a reasonable set of aliases. Reviewed-by: ericloewe Reviewed-by: Matthew Ahrens <mahrens@delphix.com> Reviewed-by: Richard Laager <rlaager@wiktel.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Colm Buckley <colm@tuatha.org> Closes #11468
107 lines
3.2 KiB
Groff
107 lines
3.2 KiB
Groff
.\"
|
|
.\" CDDL HEADER START
|
|
.\"
|
|
.\" The contents of this file are subject to the terms of the
|
|
.\" Common Development and Distribution License (the "License").
|
|
.\" You may not use this file except in compliance with the License.
|
|
.\"
|
|
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
|
|
.\" or http://www.opensolaris.org/os/licensing.
|
|
.\" See the License for the specific language governing permissions
|
|
.\" and limitations under the License.
|
|
.\"
|
|
.\" When distributing Covered Code, include this CDDL HEADER in each
|
|
.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
|
|
.\" If applicable, add the following below this CDDL HEADER, with the
|
|
.\" fields enclosed by brackets "[]" replaced with your own identifying
|
|
.\" information: Portions Copyright [yyyy] [name of copyright owner]
|
|
.\"
|
|
.\" CDDL HEADER END
|
|
.\"
|
|
.\"
|
|
.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
|
|
.\" Copyright (c) 2012, 2018 by Delphix. All rights reserved.
|
|
.\" Copyright (c) 2012 Cyril Plisko. All Rights Reserved.
|
|
.\" Copyright (c) 2017 Datto Inc.
|
|
.\" Copyright (c) 2018 George Melikov. All Rights Reserved.
|
|
.\" Copyright 2017 Nexenta Systems, Inc.
|
|
.\" Copyright (c) 2017 Open-E, Inc. All Rights Reserved.
|
|
.\" Copyright (c) 2021, Colm Buckley <colm@tuatha.org>
|
|
.\"
|
|
.Dd August 9, 2019
|
|
.Dt ZPOOL-UPGRADE 8
|
|
.Os
|
|
.Sh NAME
|
|
.Nm zpool-upgrade
|
|
.Nd Manage version and feature flags of ZFS storage pools
|
|
.Sh SYNOPSIS
|
|
.Nm zpool
|
|
.Cm upgrade
|
|
.Nm zpool
|
|
.Cm upgrade
|
|
.Fl v
|
|
.Nm zpool
|
|
.Cm upgrade
|
|
.Op Fl V Ar version
|
|
.Fl a Ns | Ns Ar pool Ns ...
|
|
.Sh DESCRIPTION
|
|
.Bl -tag -width Ds
|
|
.It Xo
|
|
.Nm zpool
|
|
.Cm upgrade
|
|
.Xc
|
|
Displays pools which do not have all supported features enabled and pools
|
|
formatted using a legacy ZFS version number.
|
|
These pools can continue to be used, but some features may not be available.
|
|
Use
|
|
.Nm zpool Cm upgrade Fl a
|
|
to enable all features on all pools. (If a pool has specified compatibility
|
|
feature sets using the
|
|
.Fl o Ar compatibility
|
|
property, only the features present in all requested compatibility sets will
|
|
be enabled on that pool.)
|
|
.It Xo
|
|
.Nm zpool
|
|
.Cm upgrade
|
|
.Fl v
|
|
.Xc
|
|
Displays legacy ZFS versions supported by the current software.
|
|
See
|
|
.Xr zpool-features 5
|
|
for a description of feature flags features supported by the current software.
|
|
.It Xo
|
|
.Nm zpool
|
|
.Cm upgrade
|
|
.Op Fl V Ar version
|
|
.Fl a Ns | Ns Ar pool Ns ...
|
|
.Xc
|
|
Enables all supported features on the given pool. (If the pool has specified
|
|
compatibility feature sets using the
|
|
.Fl o Ar compatibility
|
|
property, only the features present in all requested compatibility sets will be
|
|
enabled.)
|
|
Once this is done, the pool will no longer be accessible on systems that do not
|
|
support feature flags.
|
|
See
|
|
.Xr zpool-features 5
|
|
for details on compatibility with systems that support feature flags, but do not
|
|
support all features enabled on the pool.
|
|
.Bl -tag -width Ds
|
|
.It Fl a
|
|
Enables all supported features (from specified compatibility sets, if any) on all
|
|
pools.
|
|
.It Fl V Ar version
|
|
Upgrade to the specified legacy version.
|
|
If the
|
|
.Fl V
|
|
flag is specified, no features will be enabled on the pool.
|
|
This option can only be used to increase the version number up to the last
|
|
supported legacy version number.
|
|
.El
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr zpool-features 5 ,
|
|
.Xr zpoolconcepts 8 ,
|
|
.Xr zpoolprops 8 ,
|
|
.Xr zpool-history 8
|