.\" SPDX-License-Identifier: GPL-3.0-or-later .\" SPDX-FileCopyrightText: 2020, Western Digital Corporation or its affiliates. .\" Written by Damien Le Moal .\" .TH ZBD 8 .SH NAME zbd \- manage zoned block devices .SH SYNOPSIS .B zbd .I command [options] .I device .SH DESCRIPTION .B zbd is used to manipulate zones of a zoned block device. Zoned block devies are block devices that support the SCSI Zoned Block Commands (ZBC), ATA Zoned-device ATA Commands (ZAC) or NVMe Zoned NameSpace commands (ZNS). The zones to operate on can be specified using the offset and length options. .PP The .I device argument must be the pathname of the target zoned block device. .SH COMMANDS By default, all commands will operate from the zone at device offset 0 and operate on all zones. The common options \fB-ofst\fP and \fB-len\fP can be used to modify the operation range of commands. .SS report The command \fBzbd report\fP is used to obtain and display the device zone information. .PP By default, the command will report all zones from the start of the device up to the last zone of the device. Options may be used to modify this behavior, changing the starting zone or the size of the report. .B Report output .TS tab(:); l l. Zone:Zone number type:Type of the zone ofst:Zone start offset in Bytes len:Zone length in Bytes cap:Zone usable capacity in Bytes wp:Zone write pointer position in Bytes cond:Zone condition non_seq:Non-sequential write resources active reset:Reset write pointer recommended .TE .B Zone types .TS tab(:); l l. cnv:Conventional swr:Sequential write required swp:Sequential write preferred ???:Unknown (should not be reported) .TE .B Zone conditions .TS tab(:); l l. nw:Not write pointer em:Empty fu:Full oe:Explicitly opened oi:Implicitly opened cl:Closed ol:Offline ro:Read only ??:Reserved conditions (should not be reported) .TE .SS reset The command \fBzbd reset\fP is used to reset the write pointer of one or more zones. .SS open The command \fBzbd open\fP is used to explicitly open one or more zones. .SS close The command \fBzbd close\fP is used to close one or more zones. .SS finish The command \fBzbd finish\fP is used to finish (transition to full) one or more zones. .SS dump Save the zone information and zone data of a zoned device to files. The files are by default saved in the current working directory. A different output path can be specified using the option \fB-d\fP. The file names are prefixed by default using the device base name. The device zone information is saved in the file \fI_zone_info.dump\fP and the device zone data is saved in the file \fI_zone_data.dump\fP. The file name prefix can be changed using the option \fB-f\fP. .PP The \fBdump\fP command will save the data of all conventional zones and the written data of all sequential zones in the operation range. The options \fB-ofst\fP and \fB-len\fP can be used to limit in size the operation range. .PP The zone information file always saves zone information for all zones of the device, regardless of the specified operation range. This file can be specified in place of a device name with the \fBreport\fP command to inspect its content. .SS restore Set a zoned block device zone status and zone data according to the zone information and zoned data saved in files generated using the \fBdump\fP command. The resulting state of the target device will be identical to that of the device used to generate the dump files. The \fBrestore\fP command will only operate on the zone range that was used with the \fBdump\fP command. The target zoned block device must be compatible with the zoned block device used as the source for the dump operation. That is, the target device must have the same capacity and zone configuration (zone type, zone size and zone capacity) as the source device. .PP The path and name prefix of the dump files to use for restoring a device can be changed using the options \fB-d\fP and \fB-f\fP. .SH OPTIONS Options applicable to all commands are as follows. .TP .BR \-v Verbose mode (for debug). .TP .BR \-i Display device information before executing the command. .TP .BR "\-ofst " \fIoffset\fP Start offset in Bytes of the first zone to operate on. .TP .BR "\-len " \fIlength\fP Length in Bytes of the range of zones to operate on. .TP .BR \-h , " \-\-help" Display help text and exit. .TP Options applicable only to the \fBzbd report\fP command are as follows. .TP .BR \-csv Output zone information using the comma-separated (csv) format. .TP .BR \-n Display the number of zones that are to be reported. .TP .BR \-c Display the total capacity of all reported zones. When used with the \fB-n\fP and \fB-csv\fP options, the number of zones is output first. .TP .BR "\-ro " \fIfilter\fP Sepcify reporting option to filter the zone report. \fIfilter\fP can be one of the following. .TS tab(:); l l. em:Empty zones oi:Implicitly opened zones oe:Explicitly opened zones cl:Closed zones fu:Full zones ro:Read only zones ol:Offline zones nw:Conventional zones ns:Non_seq write resource zones rw:Reset write pointer recommended zones .TE .SH AUTHOR .nf Damien Le Moal .fi .SH SEE ALSO .BR blkzone (8) .SH AVAILABILITY The zbd command is part of the libzbd library available from .UR https://\:github.com\:/westerndigitalcorporation\:/libzbd .UE .