2019-11-13 20:21:07 +03:00
|
|
|
.\"
|
|
|
|
.\" 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
|
2022-07-12 00:16:13 +03:00
|
|
|
.\" or https://opensource.org/licenses/CDDL-1.0.
|
2019-11-13 20:21:07 +03:00
|
|
|
.\" 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.
|
|
|
|
.\"
|
2021-05-27 03:46:40 +03:00
|
|
|
.Dd May 27, 2021
|
2019-11-13 20:21:07 +03:00
|
|
|
.Dt ZPOOL-TRIM 8
|
2020-08-21 21:55:47 +03:00
|
|
|
.Os
|
2021-05-27 03:46:40 +03:00
|
|
|
.
|
2019-11-13 20:21:07 +03:00
|
|
|
.Sh NAME
|
2020-10-22 21:28:10 +03:00
|
|
|
.Nm zpool-trim
|
2021-05-27 03:46:40 +03:00
|
|
|
.Nd initiate TRIM of free space in ZFS storage pool
|
2019-11-13 20:21:07 +03:00
|
|
|
.Sh SYNOPSIS
|
2020-10-22 21:28:10 +03:00
|
|
|
.Nm zpool
|
2019-11-13 20:21:07 +03:00
|
|
|
.Cm trim
|
2020-03-05 02:07:11 +03:00
|
|
|
.Op Fl dw
|
2019-11-13 20:21:07 +03:00
|
|
|
.Op Fl r Ar rate
|
2021-05-27 03:46:40 +03:00
|
|
|
.Op Fl c Ns | Ns Fl s
|
2019-11-13 20:21:07 +03:00
|
|
|
.Ar pool
|
2021-05-27 03:46:40 +03:00
|
|
|
.Oo Ar device Ns Oc Ns …
|
|
|
|
.
|
2019-11-13 20:21:07 +03:00
|
|
|
.Sh DESCRIPTION
|
|
|
|
Initiates an immediate on-demand TRIM operation for all of the free space in
|
2021-05-27 03:46:40 +03:00
|
|
|
a pool.
|
|
|
|
This operation informs the underlying storage devices of all blocks
|
2019-11-13 20:21:07 +03:00
|
|
|
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
|
2021-05-27 03:46:40 +03:00
|
|
|
pool property setting.
|
|
|
|
See the documentation for the
|
2019-11-13 20:21:07 +03:00
|
|
|
.Sy autotrim
|
|
|
|
property above for the types of vdev devices which can be trimmed.
|
|
|
|
.Bl -tag -width Ds
|
2021-05-27 03:46:40 +03:00
|
|
|
.It Fl d , -secure
|
|
|
|
Causes a secure TRIM to be initiated.
|
|
|
|
When performing a secure TRIM, the
|
2019-11-13 20:21:07 +03:00
|
|
|
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.
|
2021-05-27 03:46:40 +03:00
|
|
|
.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
|
2019-11-13 20:21:07 +03:00
|
|
|
per second, is applied on a per-vdev basis and may be set differently for
|
|
|
|
each leaf vdev.
|
2021-05-27 03:46:40 +03:00
|
|
|
.It Fl c , -cancel
|
2019-11-13 20:21:07 +03:00
|
|
|
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.
|
2021-05-27 03:46:40 +03:00
|
|
|
.It Fl s , -suspend
|
2019-11-13 20:21:07 +03:00
|
|
|
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.
|
2021-05-27 03:46:40 +03:00
|
|
|
.It Fl w , -wait
|
2020-03-05 02:07:11 +03:00
|
|
|
Wait until the devices are done being trimmed before returning.
|
2019-11-13 20:21:07 +03:00
|
|
|
.El
|
2022-06-11 04:22:14 +03:00
|
|
|
.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
|
2021-05-27 03:46:40 +03:00
|
|
|
.
|
2019-11-13 20:21:07 +03:00
|
|
|
.Sh SEE ALSO
|
2022-06-11 04:22:14 +03:00
|
|
|
.Xr systemd.timer 5 ,
|
2021-06-04 23:29:26 +03:00
|
|
|
.Xr zpoolprops 7 ,
|
2019-11-13 20:21:07 +03:00
|
|
|
.Xr zpool-initialize 8 ,
|
2021-06-04 23:29:26 +03:00
|
|
|
.Xr zpool-wait 8
|