Provided by: openseachest_23.12-1_amd64 

NAME
Version - =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.3.6-6_2_0
X86_64 Build Date: Dec 1 2023 Today: Fri Dec 1 15:18:13 2023 User: current user
========================================================================================== 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 openSeaChest_Erase -d /dev/sg<#> --eraseRestoreMaxPrep
openSeaChest_Erase -d /dev/sg<#> --eraseRestoreMaxPrep --overwrite 0
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 ---openSeaChest_Erase specific exit codes--- 32 = Zero Validation Failure 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 NOTE: The "all" argument is handled by running the
specified options on each drive detected in the
OS sequentially. For parallel operations, please use a script opening a separate instance for each
device handle.
--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.
--eraseRestoreMaxPrep
This option will attempt to restore the max LBA to the highest user addressable sector prior to
beginning a drive erasure. If any failure is encountered while restoring the maxLBA, then an
error will be indicated and the erase will not be started or attempted until other user
intervention can be completed. If a feature is frozen, locked, or has already been used during
the current power cycle, then these things can cause a failure. The solution is to power cycle
the drive, but in some cases it may be necessary to try a different computer or adapter as
commands may be blocked by the system or automatically issued by the BIOS to lock access to
capacity changing commands. This option will handle the ATA HPA (Host Protected Area), AMAC
(Accessible Max Address Configuration), HPA Security Extension, and DCO (Device Configuration
Overlay) features in accordance with the specifications. If the restore completes without error,
then the erase will proceed and additional errors will only be in relation to those erasure
methods.
--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.
--zeroVerify [full | quick]
Use this option to verify drive content, whether it's set to zero or not. This operation will
read user accessible address and validate if content at that address is zero or not. Validation
modes:
full - Complete drive will be scanned for verification. quick - 0.1% of total capacity will be
scanned for ID and OD validation along with
2 random addresses from 10000 equal size sections each.
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 ========================= Data sanitization capabilities:
Recommendation - Restore the MaxLBA of the device prior to any erase in
order to allow the drive to erase all user addressable sectors. For ATA devices this means
restoring HPA + DCO / AMAC to restore the maxLBA. Restoring the MaxLBA also allows full
verification of all user addressable space on the device without a limitation from a lower maxLBA.
Clear - Logical techniques are applied to all addressable storage
locations, protecting against simple, non-invasive data recovery techniques.
Clear, Possible Purge - Cryptographic erase is a purge if the vendor
implementation meets the requirements in IEEE 2883-2022.
Purge - Logical techniques that target user data, overprovisioning,
unused space, and bad blocks rendering data recovery infeasible even with state-of-the-art
laboratory techniques.
This utility does not support clear/purge verification yet. All labels are written according to the
expectation that the device firmware will meet these capabilities as defined in the appropriate standards
from T10, T13, SATA - IO, and NVMexpress. =========================
--overwrite [starting LBA]
(Clear)
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 in # of LBAs]
(Clear)
Use with the overwrite option (--overwrite) 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] (Purge)
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 in # of LBAs]
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/--unmapRange option.
--writeSame [starting LBA]
(Clear)
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 in # of LBAs]
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) (Clear | Purge)
Use "normal" to start a standard ATA security erase (Clear) or "enhanced" to start an enhanced ATA
security erase (Purge).
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.
WARNING: It is recommended that this operation is done from a bootable environment
(Live USB) to reduce the risk of OS background activities running and triggering a device reset
while reformating the drive.
[0m --formatUnit [current | new sector size] (SAS Only) (Clear)
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)
(None | Clear | Clear, Possible Purge)
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,
however the media may not have been erased by the controller.)
user - requests all user data is erased by the device. (Clear) crypto - requests a cryptographic
erase of all user data. Note: this mode
is not supported on all devices. (Clear, Possible Purge)
--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. A
data sanitization compliant with IEEE 2883 Clear requires the --nvmFmtSecErase option to be
provided. Without this option the controller may not erase all user data and substitute returning
zeroes for performance instead.
Utility Version: 4.3.6 opensea-common Version: 2.0.0 opensea-transport Version: 6.2.0
opensea-operations Version: 5.1.1 Build Date: Dec 1 2023 Compiled Architecture: X86_64 Detected
Endianness: Little Endian Compiler Used: GCC Compiler Version: 7.5.0 Operating System Type: Linux
Operating System Version: 4.15.0-211 Operating System Name: Ubuntu 18.04.6 LTS
Version Info for openSeaChest_Erase: December 2023 VERSION(8)