NVME-ZNS-RESET-ZO(1)

πŸ’… nvme-zns-reset-zo(1) β€” the NVMe Manual, bestie edition ✨

okay so you opened the nvme-zns-reset-zo page, welcome, grab a snack πŸ“ this one's from the NVMe Manual and it's all about yeeting a zone back to the beginning of time. let's go.


✨ NAME ✨

nvme-zns-reset-zone β€” resets one zone, or literally all of them πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

nvme [<global-options>] zns reset-zone <device>
                        [--namespace-id=<NUM> | -n <NUM>]
                        [--start-lba=<LBA> | -s <LBA>]
                        [--select-all | -a]

🌸 DESCRIPTION 🌸

so for the NVMe device you hand it, this fires off the Zone Management Send command with the "Reset Zone" action. the way that works: it transitions the zone into the empty state, and on success it sets the write pointer for each zone back to the beginning. fresh start, clean slate, main character energy πŸ‘‘

the <device> parameter is mandatory, no skipping it β€” and it can be either the NVMe character device (ex: /dev/nvme0) or a namespace block device (ex: /dev/nvme0n1) 🫢


πŸ’… OPTIONS πŸ’…

  • -n <NUM>, --namespace-id=<NUM> β€” use the namespace id you provide for the command. if you don't provide one, the namespace id of the block device gets used instead. but lowkey if the command is issued to a non-block device, this parameter is required, no cap. also the broadcast value 0xffffffff can be given as all or -1 😌
  • -s <lba>, --start-lba=<lba> β€” the starting LBA of the zone you wanna reset ⭐
  • -a, --select-all β€” select all zones for this action. all of them. every single one πŸ’€

🌈 GLOBAL OPTIONS 🌈

these ones are defined up at the top-level nvme command and they're available to this subcommand too, iykyk:

  • --dry-run β€” print the command that would be executed, but don't actually execute it. manifesting the command without running it ✨
  • --no-ioctl-probing β€” disable probing for 64-bit IOCTL support.
  • --no-retries β€” disable retry logic on transient errors. one shot, no do-overs πŸ™ˆ
  • -o <fmt>, --output-format=<fmt> β€” set the reporting format to normal, tabular, 'json, or binary. only one output format may be used at a time, so pick your fave and commit πŸŽ€
  • --output-format-version=<version> β€” select the output format version. Version 1 uses the original field naming, while version 2 (default) provides more consistent and script-friendly field names. other versions are rejected, periodt 🚫
  • --quiet β€” suppress informational messages. errors are still reported, and --quiet cancels any --verbose for the library log level. 🀫
  • --set-options=<key=value>[,<key=value>...] β€” set libnvme library options for this invocation. supported keys are force-4k, mi-probe-enabled, test-base-dir and test-sysfs-dir.
  • --timeout=<ms> β€” set the timeout for the command in milliseconds. infinite or -1 waits without a time limit (0xffffffff). patience is a virtue bestie 🧚
  • -v, --verbose β€” increase the level of detail in the output. may be specified multiple times to further increase verbosity. spam that flag, go off πŸ‘‘
these options can also be set as machine-wide defaults in nvme-cli.conf(5). a command-line flag always overrides the file β€” CLI stays the main character πŸ’…

πŸ”₯ EXAMPLES πŸ”₯

  • reset the first zone on namespace 1:
# nvme zns reset-zone /dev/nvme0 -n 1 -s 0

ate. that's it, that's the whole example 🌟


πŸ‘‘ NVME πŸ‘‘

part of nvme-cli β€” you already knew that though πŸ’œ


and that's the page!! official deets: this is from the NVMe Manual, part of nvme-cli, dated 10/30/2026. go reset some zones bestie, ily, bye πŸ«ΆπŸŽ€βœ¨

πŸ“¦ where this page comes from