diff options
Diffstat (limited to 'sys/contrib/openzfs/man/man8/zpool-trim.8')
-rw-r--r-- | sys/contrib/openzfs/man/man8/zpool-trim.8 | 118 |
1 files changed, 118 insertions, 0 deletions
diff --git a/sys/contrib/openzfs/man/man8/zpool-trim.8 b/sys/contrib/openzfs/man/man8/zpool-trim.8 new file mode 100644 index 000000000000..c4e849019789 --- /dev/null +++ b/sys/contrib/openzfs/man/man8/zpool-trim.8 @@ -0,0 +1,118 @@ +.\" SPDX-License-Identifier: CDDL-1.0 +.\" +.\" 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 https://opensource.org/licenses/CDDL-1.0. +.\" 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) 2025 Hewlett Packard Enterprise Development LP. +.\" +.Dd July 30, 2025 +.Dt ZPOOL-TRIM 8 +.Os +. +.Sh NAME +.Nm zpool-trim +.Nd initiate TRIM of free space in ZFS storage pool +.Sh SYNOPSIS +.Nm zpool +.Cm trim +.Op Fl dw +.Op Fl r Ar rate +.Op Fl c Ns | Ns Fl s +.Fl a Ns | Ns Ar pool +.Oo Ar device Ns Oc Ns … +. +.Sh DESCRIPTION +Initiates an immediate on-demand TRIM operation for all of the free space in +a pool. +This operation informs the underlying storage devices of all blocks +in the pool which are no longer allocated and allows thinly provisioned +devices to reclaim the space. +.Pp +A manual on-demand TRIM operation can be initiated irrespective of the +.Sy autotrim +pool property setting. +See the documentation for the +.Sy autotrim +property above for the types of vdev devices which can be trimmed. +.Bl -tag -width Ds +.It Fl a , -all +Perform TRIM operation on +all +pools. +.It Fl d , -secure +Causes a secure TRIM to be initiated. +When performing a secure TRIM, the +device guarantees that data stored on the trimmed blocks has been erased. +This requires support from the device and is not supported by all SSDs. +.It Fl r , -rate Ar rate +Controls the rate at which the TRIM operation progresses. +Without this +option TRIM is executed as quickly as possible. +The rate, expressed in bytes +per second, is applied on a per-vdev basis and may be set differently for +each leaf vdev. +.It Fl c , -cancel +Cancel trimming on the specified devices, or all eligible devices if none +are specified. +If one or more target devices are invalid or are not currently being +trimmed, the command will fail and no cancellation will occur on any device. +.It Fl s , -suspend +Suspend trimming on the specified devices, or all eligible devices if none +are specified. +If one or more target devices are invalid or are not currently being +trimmed, the command will fail and no suspension will occur on any device. +Trimming can then be resumed by running +.Nm zpool Cm trim +with no flags on the relevant target devices. +.It Fl w , -wait +Wait until the devices are done being trimmed before returning. +.El +.Sh PERIODIC TRIM +On machines using systemd, trim timers can be enabled on a per-pool basis. +.Nm weekly +and +.Nm monthly +timer units are provided. +.Bl -tag -width Ds +.It Xo +.Xc +.Nm systemctl +.Cm enable +.Cm zfs-trim-\fIweekly\fB@\fIrpool\fB.timer +.Cm --now +.It Xo +.Xc +.Nm systemctl +.Cm enable +.Cm zfs-trim-\fImonthly\fB@\fIotherpool\fB.timer +.Cm --now +.El +. +.Sh SEE ALSO +.Xr systemd.timer 5 , +.Xr zpoolprops 7 , +.Xr zpool-initialize 8 , +.Xr zpool-wait 8 |