Provided by: openseachest_23.03.1-1_amd64 bug

NAME

       openSeaChest_Erase - =drive utilities

DESCRIPTION

       ==========================================================================================

              openSeaChest_Erase  -  openSeaChest  drive  utilities  - NVMe Enabled Copyright (c)
              2014-2023 Seagate  Technology  LLC  and/or  its  Affiliates,  All  Rights  Reserved
              openSeaChest_Erase  Version:  4.1.0-4_0_4 X86_64 Build Date: Mar 10 2023 Today: Thu
              Mar 16 15:48:38 2023        User: tyler

       ==========================================================================================
       Usage =====

              openSeaChest_Erase [-d <sg_device>] {arguments} {options}

       Examples ========

              openSeaChest_Erase  --scan  openSeaChest_Erase -d /dev/sg? -i openSeaChest_Erase -d
              /dev/sg? --SATInfo openSeaChest_Erase -d /dev/sg?  --llInfo  openSeaChest_Erase  -d
              /dev/sg?  --showEraseSupport  openSeaChest_Erase -d /dev/sg? --performQuickestErase
              --poll openSeaChest_Erase -d /dev/sg? --overwrite 0 openSeaChest_Erase -d  /dev/sg?
              --overwrite 1000 --overwriteRange 2000 openSeaChest_Erase -d /dev/sg? --overwrite 0
              --hours 1 openSeaChest_Erase -d /dev/sg? --overwrite 0  --pattern  repeat:04ABCDEFh
              openSeaChest_Erase  -d /dev/sg? --writeSame 0 --poll openSeaChest_Erase -d /dev/sg?
              --writeSame  1000  --writeSameRange  2000  --poll  openSeaChest_Erase  -d  /dev/sg?
              --sanitize  overwrite  --poll  openSeaChest_Erase  -d /dev/sg? --sanitize overwrite
              --poll --pattern  random  openSeaChest_Erase  -d  /dev/sg?  --sanitize  cryptoerase
              --poll  openSeaChest_Erase -d /dev/sg? --ataSecureErase enhanced openSeaChest_Erase
              -d        /dev/sg?        --ataSecureErase        enhanced         --ataSecPassword
              AutoATAWindowsString12345678901   --ataSecPassType   user   openSeaChest_Erase   -d
              /dev/sg? --trim 0 openSeaChest_Erase  -d  /dev/sg?  --trim  1000  --trimRange  2000
              openSeaChest_Erase  -d  /dev/sg?  --formatUnit current --poll openSeaChest_Erase -d
              /dev/sg?   --formatUnit   current    --poll    --pattern    file:path/to/myFile.bin
              openSeaChest_Erase  -d  /dev/sg?  --nvmFormat  current --poll openSeaChest_Erase -d
              /dev/sg? --nvmFormat 4096 --poll openSeaChest_Erase -d /dev/sg? --nvmFormat current
              --poll  --nvmFmtSecErase  user  openSeaChest_Erase  -d /dev/sg? --nvmFormat current
              --poll --nvmFmtPI 1

       Return codes ============

              Generic/Common exit codes 0 = No Error Found 1 = Error in command line options 2  =
              Invalid  Device Handle or Missing Device Handle 3 = Operation Failure 4 = Operation
              not supported 5 = Operation Aborted 6 = File Path Not Found 7 = Cannot Open File  8
              = File Already Exists 9 = Need Elevated Privileges Anything else = unknown error

       Utility Options ===============

       --echoCommandLine

              Echo the command line entered into the utility on the screen.

       --enableLegacyUSBPassthrough

              Only  use  this  option  on  old  USB  or  IEEE1394 (Firewire) products that do not
              otherwise work with the tool.  This option will enable a  trial  and  error  method
              that  attempts sending various ATA Identify commands through vendor specific means.
              Because of this, certain products that may respond in unintended  ways  since  they
              may  interpret  these  commands  differently  than  the bridge chip the command was
              designed for.

       --forceATA

              Using this option will force the current drive to be treated as a ATA  drive.  Only
              ATA commands will be used to talk to the drive.

       --forceATADMA
              (SATA Only)

              Using this option will force the tool to issue SAT commands to ATA device using the
              protocol set to DMA whenever possible  (on  DMA  commands).   This  option  can  be
              combined with --forceATA

       --forceATAPIO
              (SATA Only)

              Using  this  option  will  force  the tool to issue PIO commands to ATA device when
              possible. This option can be combined with --forceATA

       --forceATAUDMA
              (SATA Only)

              Using this option will force the tool to issue SAT commands to ATA device using the
              protocol  set  to  UDMA  whenever  possible  (on DMA commands).  This option can be
              combined with --forceATA

       --forceSCSI

              Using this option will force the current drive to be treated as a SCSI drive.  Only
              SCSI commands will be used to talk to the drive.

       -h, --help

              Show  utility  options  and  example  usage (this output you see now) Please report
              bugs/suggestions  to  seaboard@seagate.com.   Include  the  output   of   --version
              information in the email.

       --hideLBACounter

              Use  this option to suppress the output from options that show LBA counters without
              turning off all output to the screen.

       --license

              Display the Seagate End User License Agreement (EULA).

       --modelMatch [model Number]

              Use this option to run on all drives  matching  the  provided  model  number.  This
              option will provide a closest match although an exact match is preferred. Ex: ST500
              will match ST500LM0001

       --noBanner

              Use this option to suppress the text banner that displays each time openSeaChest is
              run.

       --onlyFW [firmware revision]

              Use  this option to run on all drives matching the provided firmware revision. This
              option will only do an exact match.

       --onlySeagate

              Use this option to match only Seagate drives for the options provided

       -q, --quiet

              Run openSeaChest_Erase in quiet mode. This is the same as -v 0 or --verbose 0

       -v [0-4], --verbose [0 | 1 | 2 | 3 | 4]

              Show verbose information. Verbosity levels are: 0 - quiet 1 - default 2  -  command
              descriptions  3 - command descriptions and values 4 - command descriptions, values,
              and data buffers Example: -v 3 or --verbose 3

       -V, --version

              Show openSeaChest_Erase version and copyright information & exit

       Utility Arguments =================

       -d, --device [deviceHandle | all]

              Use this option with most commands to specify the device handle on which to perform
              an  operation. Example: /dev/sg?  To run across all devices detected in the system,
              use the "all" argument instead of a device handle.  Example: -d all

       --displayLBA [LBA]

              This option will read and display the contents of the specified LBA to the  screen.
              The  display  format  is  hexadecimal  with  an ASCII translation on the side (when
              available).

       -F, --scanFlags [option list]

              Use this option to control the output from scan  with  the  options  listed  below.
              Multiple options can be combined.

       ata - show only ATA (SATA) devices
              usb  -  show  only USB devices scsi - show only SCSI (SAS) devices nvme - show only
              NVMe devices interfaceATA - show devices on an ATA interface  interfaceUSB  -  show
              devices  on a USB interface interfaceSCSI - show devices on a SCSI or SAS interface
              interfaceNVME = show devices on an NVMe interface  sd  -  show  sd  device  handles
              sgtosd - show the sd and sg device handle mapping

       -i, --deviceInfo

              Show information and features for the storage device

       --llInfo

              Dump low-level information about the device to assist with debugging.

       --poll

              Use  this  option  to  cause  another  operation  to poll for progress until it has
              completed.  This argument does not return to the command prompt and prints  ongoing
              completion percentages (%)

       the final test result.
              Full drive procedures will take a

       very long time.
              Used with --sanitize, or --writeSame (SATA).

       --progress [sanitize | format | nvmformat]

              Get  the  progress  for  a test that was started quietly without the polling option
              (default). You must specify a test you wish to get progress from.  Ex:  "--progress
              dst" or "--progress sanitize" The progress counts up from 0% to 100%.

       -s, --scan

              Scan  the  system  and  list all storage devices with logical /dev/sg? assignments.
              Shows model, serial and firmware numbers.  If your device is not listed on  a  scan
              immediately after booting, then wait 10 seconds and run it again.

       -S, --Scan

              This  option  is the same as --scan or -s, however it will also perform a low level
              rescan to pick up other devices. This low level rescan may wake  devices  from  low
              power  states  and  may  cause the OS to re-enumerate them.  Use this option when a
              device is plugged in and not discovered in a normal scan.  NOTE: A low-level rescan
              may  not  be  available  on  all interfaces or all OSs. The low-level rescan is not
              guaranteed to find additional devices in the system when the device  is  unable  to
              come to a ready state.

       --SATInfo

              Displays  SATA  device information on any interface using both SCSI Inquiry / VPD /
              Log reported data (translated according to SAT) and the ATA Identify / Log reported
              data.

       --testUnitReady

              Issues  a SCSI Test Unit Ready command and displays the status. If the drive is not
              ready, the sense key, asc, ascq, and fru will be displayed  and  a  human  readable
              translation from the SPC spec will be displayed if one is available.

       --fastDiscovery

       Use this option
              to issue a fast scan on the specified drive.

       --hours [hours]

              Use this option to specify a time in hours for a timed operation to run.

       --minutes [minutes]

              Use this option to specify a time in minutes for a timed operation to run.

       --seconds [seconds]

              Use this option to specify a time in seconds for a timed operation to run.

       --showEraseSupport

              This  option  checks  the  drive  to  determine  which  methods of data erasure are
              supported and lists them, from fastest to slowest.

       WARNING: Some erase methods may affect all LUNs/namespaces for devices
              with multiple logical units or namespaces.

              SATA Only: ========= --ataSATsecurityProtocol [enable | disable]              (SATA
              only)

              This  option can be used to force enable or disable using the ATA security protocol
              as specified in the SAT specification.  By default, the tool will use  this  method
              when  it  is  supported  to  allow  the  SATL to understand and manage the security
              commands being performed and prevent other issues.

       --ataSecPassword ["ASCII password" | SeaChest | empty]
              (SATA only)

              Use this option to specify a password to use with an  ATA  security  operation.  If
              specifying  a password with spaces, quotes must be used.  If SeaChest is given, the
              default SeaChest password will be used.  If empty is given, an empty password  will
              be used.  Examples:

              "This  is  a  valid  password" ThisIsAlsoValid "This password uses \"quotes\" "This
              password is \/\/eird"

       --ataSecPassType [user | master]
              (SATA only)

              Use this option to specify if the password being given  with  the  --ataSecPassword
              option  is  a  user  or a master password.  If this option is not provided, user is
              assumed.

       --ataSecPWMod [byteswapped | zeropad  |  spacepad  |  fpad  |  leftAlign  |  rightAlign  |
              uppercase | lowercase | invertcase] (SATA Only)

              Use this option to have the utility make modifications to the ATA security password
              to attempt other various ways it may be sent  by  a  system  bios.  These  are  not
              guaranteed  to  work,  but  may  help unlock a drive that was locked by a BIOS that
              encoded the password in a unique way.  This option can be presented multiple  times
              to  select  multiple  modificaitons.   EX:  --ataSecPWMod byteswapped --ataSecPWMod
              invertcase

              byteswapped - byteswaps the password. EX: blah -> lbha  zeropad  -  zero  pads  the
              password if less than 32 characters spacepad - space pads the password if less than
              32 characters fpad - pads the passwords with Fh (all 1's) if less than 32characters
              leftAlign  -  left  aligns the password in the buffer rightAlign - right aligns the
              password in the buffer uppercase - sends the password as all uppercase lowercase  -
              sends  the password as all lowercase invertcase - switches uppercase for lower, and
              lowercase for upper

       Data Destructive Commands =========================

       --overwrite [starting LBA]

              Use this option to start an overwrite erase at the specified starting LBA.  Combine
              this option with overwriteRange or time options (hours, minutes seconds) to erase a
              portion of the drive.

       --overwriteRange [range]

              Use with option with the overwrite option to erase a range of LBAs on the  selected
              drive.

       --pattern [repeat:asciinospaces | random | increment:startValue | file:filename]

              Use  this  option  with  overwrite, sanitize, and format unit operations to write a
              specific pattern to a range of LBAs or the whole drive.

              * repeat - without spaces, enter an ASCII  text  string  or  a  hexadecimal  string
              terminated  by  a  lower case "h". This pattern will be repeated until it fills the
              logical size of the LBA. i.e. helloword or FFFFFFFFh Note:  A  hexadecimal  pattern
              will be interpreted as a 32bit unsigned integer. 4 hex bytes (8 characters) must be
              given for a hex value to be used. Ex: 1F037AC8h or 0000FFFFh * random - the  entire
              logical  sector  size will be filled with random bytes.This pattern will be written
              to all LBAs in the desired range.  *  increment  -  enter  the  starting  numerical
              value. Starting with this value, each byte will be written with 1 + previous value.
              * file - user supplied file name to use for a pattern. The file will  be  truncated
              or  padded  with  zeros  to  the  logical  sector  size  Note  1: Each file will be
              interpreted as a binary file.  Note 2: A path must also be provided if the file  is
              not in the

              local directory.

       Note 3: Sanitize Overwrite on SATA only supports a 32bit pattern.
              The file option will get truncated to a 32bit pattern for SATA products.

       --performQuickestErase

              This  option  checks  the  drive  to  determine  which  methods of data erasure are
              supported and determines which is the quickest to erase ALL data on the  drive.  It
              then  starts  the  quickest  erase.  Combine  this option with the --poll option to
              enable polling for progress on the fastest erase.  Note: Some erase methods require
              polling  and  will  have  polling  enabled  by default.  Note 2: If revertSP is the
              fastest, it will not be started since the drive PSID  must  be  passed  in  on  the
              command line.

       WARNING: Some erase methods may affect all LUNs/namespaces for devices
              with multiple logical units or namespaces.

       --sanitize [info | blockerase | cryptoerase |
              overwrite | freezelock | antifreezelock]

              Use  the  info  argument  to  show  supported sanitize operations.  Optionally, use
              blockerase, cryptoerase, or overwrite to start a  sanitize  operation.  Adding  the
              --poll  option  will  cause openSeaChest_Erase to poll the drive for progress until
              the operation is complete, or has aborted  for  some  reason.  All  sanitize  erase
              operations  are  persistent  across  a  power  cycle and cannot be stopped Example:
              --sanitize blockerase --poll

              * blockerase on some solid state drives is very fast at less than one  (1)  second,
              while  others  may take more that 30 seconds This operation performs a physical low
              level block erase operation on all current, past, and  potential  user  data.   The
              contents on user data are indeterminate upon completion.

              *  cryptoerase  is  very  fast at less than one (1) second. It changes the internal
              encryption keys that are used for  user  data  causing  all  previous  data  to  be
              useless.

              *  overwrite is a physical overwrite on all current, past, and potential user data.
              The ATA and SCSI specifications allow a user defined pattern and  multiple  passes.
              openSeaChest_Erase will use a zero pattern and a single pass for this operation.

              *  freezelock is a command to block processing of sanitize operations until a power
              cycle is performed on a device.  It is only available  on  ATA  drives.  Once  this
              command  has  been  sent,  the  freezelock  status  becomes immediate and cannot be
              cleared until the drive has been powered  off.  All  sanitize  commands,  except  a
              sanitize status will be aborted.

              *  antifreezelock  is a command that is designed to block a freezelock command from
              locking out the sanitize feature set.  It is only  available  on  ATA  drives  that
              support the ACS3, or newer specification.

       WARNING: Sanitize may affect all LUNs/namespaces for devices
              with multiple logical units or namespaces.

       --trim or --unmap [starting LBA]

              Use  one  of  these  options  to  start a trim or unmap operation on a drive at the
              provided LBA.  A range must also be provided with the range option.

       --trimRange or --unmapRange [range]

              Use one of these options to specify a range to trim or unmap on a drive. A starting
              point must be specified with the --trim/--unmap option.

       --writeSame [starting LBA]

              Enter  a  starting  lba  to  begin  a write same on to erase a range of data on the
              drive. On SCSI devices, this uses the writesame16 command.  On  ATA  devices,  this
              uses  the SCT writesame feature. Combine this option with the writeSameRange option
              to select the range. This operation will write 0's to the device for the  specified
              range. For SATA drives, this option will poll for progress until the write same has
              completed. SAS/SCSI drives will hold  the  tool  busy  until  the  write  same  has
              completed without progress indication since this is not possible on SAS/SCSI due to
              specification limitations on how write same was defined.  On  SATA,  if  any  other
              commands  are  sent to the drive while it's performing a write same, the write same
              will be aborted.  NOTE: On SAS/SCSI drives this command is optional. Additionally,

       the range may be limited to much less than the full device
              size. Due to the history of this command, there is  not  a  great  way  to  confirm
              support  in  all  cases. Some ranges will be too large, and some devices may or may
              not allow writing the full medium in a single command. If  you  wish  to  write  an
              entire  device,  consider  a  different  command  such  as  format unit or sanitize
              overwrite to accomplish this.

       --writeSameRange [range]

              Specify a range to writesame to. Use this option with the writeSame option in order
              to begin a write same operation.

              SATA Only: ========= --ataSecureErase [normal | enhanced]            (SATA only)

              Use  "normal"  to  start  a  standard  ATA security erase or "enhanced" to start an
              enhanced ATA security erase.

              ATA Security Erase takes a very long time to complete at  approximately  three  (3)
              hours   per  Tera-byte  (HDD).  Some  Seagate  SED  models  will  perform  a  quick
              cryptographic erase in enhanced mode and the time for completion is reported  as  2
              minutes  by  the  drive, but will take only seconds. This industry standard command
              begins by locking the drive with a temporary password which is cleared at  the  end
              of  the  erasure. Do not run this command unless you have ample time to allow it to
              run through to the end. If the procedure is interrupted prior to  completion,  then
              the  drive  will  remain  in  a locked state and you must manually restart from the
              beginning again. The tool will attempt to automatically clear the password that was
              set  upon failure. The default password used by the tool is "SeaChest", plain ASCII
              letters without the quotes

              * normal writes binary zeros (0) or ones (1) to all user data areas.

              * enhanced will fill all user data areas and reallocated user data  with  a  vendor
              specific  pattern.  Some  Seagate Instant Secure Erase will perform a cryptographic
              erase instead of an overwrite.

              SAS Only: ========= --fastFormat [fast format mode] (SAS Only) (SBC4 required)

              Use this option with the --formatUnit option to run a fast format.  Changing sector
              sizes  is  intended  for  supported  Seagate  products  used  in some hardware RAID
              configurations. Please consult your hardware  RAID  documentation  for  information
              about compatibility and using 4K native sectors before using this option!  Software
              RAID or individual/JBOD drive solutions will see no benefit as modern file  systems
              and  modern  operating  systems  are already 4K aware even on 512 emulation drives.
              Modern operating systems already align file systems to 4K  boundaries  required  by
              these  drives  for  optimal  performance.   Performing a sector size change is data
              destructive and has a risk that the adapter, driver, or operating  system  may  not
              know how to communicate with the device once this has completed.

       [49m[38;5;9m           There is an additional risk when performing a low-level fast format
       that may

              make the drive inoperable if it is reset at any time while it is formatting.

   [0m            Available fast format modes:
       0 - This is a standard format unit command. All logical
              blocks will be overwritten. This command will take a very long time

       1 - This is a fast format unit command keeping existing
              data in physical sector. This option can be used to quickly change the the  logical
              sector  size  between  5xxe  and  4xxx.  The media may be readable, but data may be
              unspecified or may return errors on read access according to it's error  processing
              algorithms.

       2 - This is a fast format unit command that can change the
              logical  sector size quickly. Media may or may not be read accessible until a write
              has been performed to the media.

       [49m[38;5;11m         WARNING: Any interruption to the device while it is  formatting  may
       render the

              drive inoperable! Use this at your own risk!

       WARNING: Set sector size may affect all LUNs/namespaces for devices
              with multiple logical units or namespaces.

       WARNING: Disable any out-of-band management systems/services/daemons
              before  using  this  option.  Interruptions  can be caused by these and may prevent
              completion of a sector size change.

       [0m    --formatUnit [current | new sector size]    (SAS Only)

              This option will start a format unit operation on a  SAS  drive  Use  "current"  to
              perform  a  format  unit  operation  with  the  Sector  size  currently being used,
              otherwise enter a new sector size to use upon format completion. This command  will
              erase  all  data on the drive. Combine this option with --poll to poll for progress
              until the format is complete.  Changing sector  sizes  is  intended  for  supported
              Seagate  products  used  in  some hardware RAID configurations. Please consult your
              hardware   RAID   documentation   for   information   about    compatibility    and
              supported/required sector sizes!

       WARNING: Format Unit may affect all LUNs/namespaces for devices
              with multiple logical units or namespaces.

       WARNING: Customer unique firmware may have specific requirements that
              restrict  sector  sizes  on  some  products. It may not be possible to format/ fast
              format to common sizes like 4K or 512B due to these customer requirements.

              NVMe Only: ========= --nvmFmtMetadataSet [ xlba | separate ] (NVMe Only)

              Use this option to  specify  how  metadata  is  transmitted  to  the  host  system.
              Options:

              xlba  -  metadata  is  transferred  as  part  of  the logical block data separate -
              metadata is transferred as a separate buffer

              Note: Not all devices support specifying this.  If this option is not provided, the
              NVM format will reuse the current setting.

       --nvmFmtMS [ # of bytes for metadata ]
              (NVMe Only)

              This  option  is  used  to  specify the length of metadata with a requested logical
              block size. The device must support the  combination  of  logical  block  size  and
              metadata size or the format will be rejected by the device.

       --nvmFmtNSID [all | current]
              (NVMe Only)

              This  option changes the NSID used when issuing the NVM format command. This can be
              used to control formatting an entire device or a specific namespace if  the  device
              supports  specifying  specific  namespaces  for  a  format command. Not all devices
              support this behavior. This has no effect on devices that do not support  targeting
              a specific namespace and will format the entire device If this option is not given,
              the format will be issued to all namespaces by default.

       --nvmFmtPI [ 0 | 1 | 2 | 3 ]
              (NVMe Only)

              Use this option to specify the protection type to format the  medium  with.   Note:
              Not  all devices support protection types.  If this option is not provided, the NVM
              format will reuse the current setting.

       --nvmFmtPIL [ beginning | end ] (NVMe Only)

              Use this option to specify the location protection information in an  NVM  device's
              metadata.   Note:  Not  all devices support specifying this.  If this option is not
              provided, the NVM format will reuse the current setting.

       --nvmFmtSecErase [none | user | crypto] (NVMe Only)

              This option is used to specify the type of erase to perform during  an  NVM  format
              operation.  All user data will be inaccessible upon completion of an NVM format, no
              matter the erase requested.  Options:

              none - no secure erase requested (previous data will  not  be  accessible)  user  -
              requests  all user data is erased by the device.  crypto - requests a cryptographic
              erase of all user data. Note: this mode

              is not supported on all devices.

       --nvmFormat [current | format # | sector size]
              (NVMe Only)

              This option is used to start an NVM format operation.  Use "current" to  perform  a
              format  operation  with the Sector size currently being used.  If a value between 0
              and 15 is given, then that will issue the NVM  format  with  the  specified  sector
              size/metadata  size  for that supported format on the drive.  Values 512 and higher
              will be treated as a new sector size to  switch  to  and  will  be  matched  to  an
              appropriate lba format supported by the drive.  This command will erase all data on
              the drive.  Combine this option with--poll to poll for progress until the format is
              complete.

              openSeaChest_Erase  -  openSeaChest  drive  utilities  - NVMe Enabled Copyright (c)
              2014-2023 Seagate  Technology  LLC  and/or  its  Affiliates,  All  Rights  Reserved
              openSeaChest_Erase  Version:  4.1.0-4_0_4 X86_64 Build Date: Mar 10 2023 Today: Thu
              Mar 16 15:48:38 2023        User: tyler

       ==========================================================================================
       Version Info for openSeaChest_Erase:

              Utility  Version:  4.1.0  opensea-common Version: 1.23.0 opensea-transport Version:
              4.0.4  opensea-operations  Version:  4.4.0  Build  Date:  Mar  10   2023   Compiled
              Architecture: X86_64 Detected Endianness: Little Endian Compiler Used: GCC Compiler
              Version: 11.3.0 Operating System Type: Linux Operating  System  Version:  5.19.0-35
              Operating System Name: Ubuntu 22.04.2 LTS

openSeaChest_Erase =========================March=2023======================OPENSEACHEST=ERASE(8)============