'\" t .\" Title: nvme-sanitize .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 04/15/2023 .\" Manual: NVMe Manual .\" Source: NVMe .\" Language: English .\" .TH "NVME\-SANITIZE" "1" "04/15/2023" "NVMe" "NVMe Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" nvme-sanitize \- Send NVMe Sanitize Command, return result .SH "SYNOPSIS" .sp .nf \fInvme sanitize\fR [\-\-no\-dealloc | \-d] [\-\-oipbp | \-i] [\-\-owpass= | \-n ] [\-\-ause | \-u] [\-\-sanact= | \-a ] [\-\-ovrpat= | \-p ] [\-\-force] .fi .SH "DESCRIPTION" .sp For the NVMe device given, sends a Sanitize command and provides the result\&. .sp The parameter is mandatory NVMe character device (ex: /dev/nvme0)\&. .sp On success it returns 0, error code otherwise\&. .SH "OPTIONS" .PP \-d, \-\-no\-dealloc .RS 4 No Deallocate After Sanitize: If set, then the controller shall not deallocate any logical blocks as a result of successfully completing the sanitize operation\&. If cleared, then the controller should deallocate logical blocks as a result of successfully completing the sanitize operation\&. This bit shall be ignored if the Sanitize Action field is set to 001b (i\&.e\&., Exit Failure Mode)\&. .RE .PP \-i, \-\-oipbp .RS 4 Overwrite Invert Pattern Between Passes: If set, then the Overwrite Pattern shall be inverted between passes\&. If cleared, then the overwrite pattern shall not be inverted between passes\&. This bit shall be ignored unless the Sanitize Action field is set to 011b (i\&.e\&., Overwrite)\&. .RE .PP \-n , \-\-owpass= .RS 4 Overwrite Pass Count: This field specifies the number of overwrite passes (i\&.e\&., how many times the media is to be overwritten) using the data from the Overwrite Pattern field of this command\&. A value of 0 specifies 16 overwrite passes\&. This field shall be ignored unless the Sanitize Action field is set to 011b (i\&.e\&., Overwrite)\&. .RE .PP \-u, \-\-ause .RS 4 Allow Unrestricted Sanitize Exit: If set, then the sanitize operation is performed in unrestricted completion mode\&. If cleared then the sanitize operation is performed in restricted completion mode\&. This bit shall be ignored if the Sanitize Action field is set to 001b (i\&.e\&., Exit Failure Mode)\&. .RE .PP \-a , \-\-sanact= .RS 4 Sanitize Action: .TS allbox tab(:); lt lt lt lt lt lt lt lt lt lt lt lt. T{ Value T}:T{ Definition T} T{ 0x00 T}:T{ Reserved T} T{ 0x01 | \fIexit\-failure\fR T}:T{ Exit Failure Mode T} T{ 0x02 | \fIstart\-block\-erase\fR T}:T{ Start a Block Erase sanitize operation T} T{ 0x03 | \fIstart\-overwrite\fR T}:T{ Start an Overwrite sanitize operation T} T{ 0x04 | \fIstart\-crypto\-erase\fR T}:T{ Start a Crypto Erase sanitize operation T} .TE .sp 1 .RE .PP \-p , \-\-ovrpat= .RS 4 Overwrite Pattern: This field is ignored unless the Sanitize Action field in Command Dword 10 is set to 011b (i\&.e\&., Overwrite)\&. This field specifies a 32\-bit pattern that is used for the Overwrite sanitize operation\&. .RE .PP \-\-force .RS 4 Ignore namespace is currently busy and performed the operation even though\&. .RE .SH "EXAMPLES" .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Has the program issue Sanitize Command : .sp .if n \{\ .RS 4 .\} .nf # nvme sanitize /dev/nvme0 \-a 0x02 # nvme sanitize /dev/nvme0 \-\-sanact=0x01 # nvme sanitize /dev/nvme0 \-\-sanact=start\-overwrite .fi .if n \{\ .RE .\} .RE .SH "NVME" .sp Part of the nvme\-user suite\&.