OPENSEACHEST_CONFIGURE(1)
π openSeaChest_Configure π
okay bestie, sit DOWN, because you're about to meet openSeaChest_Configure, one of the openSeaChest drive utilities. That's the manual name, that's the whole vibe, and yes it's giving legendary. β¨
πΈ NAME πΈ
openSeaChest_Configure β manual page for openSeaChest_Configure.
no cap, that's literally what it says. let's go π
π¦ DESCRIPTION π¦
==========================================================================================
Here's the little banner you get, and listen, every crumb of it matters:
openSeaChest_Configure - openSeaChest drive utilities - NVMe Enabled
Copyright (c) 2014-2026 Seagate Technology LLC and/or its Affiliates, All Rights Reserved
openSeaChest_Configure Version: 26.03.2 X86_64
Build Date: May 18 2026
Today: 20260605T144113
User: current user
==========================================================================================
β¨ Usage β¨
openSeaChest_Configure [-d <sg_device>] {arguments} {options}
β¨ Examples β¨
the way these are just chef's kiss β read them, love them, copy them exactly:
openSeaChest_Configure --scan
openSeaChest_Configure -d /dev/sg<#> -i
openSeaChest_Configure -d /dev/sg<#> --SATInfo
openSeaChest_Configure -d /dev/sg<#> --llInfo
openSeaChest_Configure -d /dev/sg<#> --phySpeed 2
openSeaChest_Configure -d /dev/sg<#> --phySpeed 3 --sasPhy 1
openSeaChest_Configure -d /dev/sg<#> --readLookAhead enable
openSeaChest_Configure -d /dev/sg<#> --nvCache info
openSeaChest_Configure -d /dev/sg<#> --writeCache disable
openSeaChest_Configure -d /dev/sg<#> --sctWriteCache default
openSeaChest_Configure -d /dev/sg<#> --sctWriteCacheReordering enable
openSeaChest_Configure -d /dev/sg<#> --freeFall 0
openSeaChest_Configure -d /dev/sg<#> --lowCurrentSpinup low
openSeaChest_Configure -d /dev/sg<#> --puisFeature disable
openSeaChest_Configure -d /dev/sg<#> --sscFeature enable
openSeaChest_Configure -d /dev/sg<#> --readyLED info
openSeaChest_Configure -d /dev/sg<#> --readyLED on
openSeaChest_Configure -d /dev/sg<#> --sctReadTimer 5s
openSeaChest_Configure -d /dev/sg<#> --sctWriteTimer 0 --volatile
openSeaChest_Configure -d /dev/sg<#> --scsiLPReset all --scsiLPResetPage 06h
openSeaChest_Configure -d /dev/sg<#> --scsiLPReset cumulative --scsiLPResetPage 02h --volatile
openSeaChest_Configure -d /dev/sg<#> --showSCSIMP 0Ah
openSeaChest_Configure -d /dev/sg<#> --showSCSIMP 0Ah --showSCSIMPControl saved
openSeaChest_Configure -d /dev/sg<#> --showSCSIMP 0Ah --showMPOutputMode classic
openSeaChest_Configure -d /dev/sg<#> --scsiMPReset 3Fh-FFh
openSeaChest_Configure -d /dev/sg<#> --scsiMPSave 3Fh-FFh
openSeaChest_Configure -d /dev/sg<#> --scsiMPRestore 3Fh-FFh
openSeaChest_Configure -d /dev/sg<#> --setSCSIMP 08:2:2:1=0
openSeaChest_Configure -d /dev/sg<#> --setSCSIMP file=modePageToChange.txt
openSeaChest_Configure -d /dev/sg<#> --provision 134217728
openSeaChest_Configure -d /dev/sg<#> --setMaxLBA 134217728 --changeIdString
openSeaChest_Configure -d /dev/sg<#> --capacityModelNumberMapping
openSeaChest_Configure -d /dev/sg<#> --dcoIdentify
openSeaChest_Configure -d /dev/sg<#> --dcoRestore
openSeaChest_Configure -d /dev/sg<#> --dcoFreezeLock
openSeaChest_Configure -d /dev/sg<#> --dcoSetMaxLBA 134217728 --dcoSetMaxMode udma4 --dcoDisableFeat hpa,puis,wrv
β¨ Return codes β¨
Generic/Common exit codes, and bestie, memorize these, they're your group chat read receipts:
0= No Error Found1= Error in command line options2= Invalid Device Handle or Missing Device Handle3= Operation Failure4= Operation not supported5= Operation Aborted6= File Path Not Found7= Cannot Open File8= File Already Exists9= Need Elevated Privileges10= Not enough resources11= Error Writing File12= Device not found when opening handle.13= Device not opened. Handle is busy.14= Insecure Directory to read or write file- Anything else = unknown error
β¨ Utility Options β¨
--csmiIgnorePort(Obsolete) β this option is obsolete and will be removed in future versions. πͺ¦--csmiUsePort(Obsolete) β this option is obsolete and will be removed in future versions. πͺ¦--csmiVerbose(Obsolete) β this option is obsolete and will be removed in future versions. πͺ¦--echoCommandLineβ echoes the command line you typed into the utility right there on your screen. very "say it back" energy π--enableLegacyUSBPassthroughβ only use this one on old USB or IEEE1394 (Firewire) products that don't otherwise work with the tool. It turns on a trial-and-error method that attempts sending various ATA Identify commands through vendor specific means. And because of that, certain products may respond in unintended ways, since they may interpret these commands differently than the bridge chip the command was designed for. β οΈ--forceATAβ forces the current drive to be treated as an ATA drive. Only ATA commands will be used to talk to the drive.--forceATADMA(SATA Only) β forces the tool to issue SAT commands to an ATA device using the protocol set to DMA whenever possible (on DMA commands). Can be combined with--forceATA.--forceATAPIO(SATA Only) β forces the tool to issue PIO commands to an ATA device when possible. Can be combined with--forceATA.--forceATAUDMA(SATA Only) β forces the tool to issue SAT commands to an ATA device using the protocol set to UDMA whenever possible (on DMA commands). Can be combined with--forceATA.--forceSCSIβ forces 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 toseaboard@seagate.com. Include the output of--versioninformation in the email. π§--licenseβ display the Seagate End User License Agreement (EULA).--modelMatch [model Number]β use this to run on all drives matching the provided model number. It'll give you a closest match, although an exact match is preferred. Ex:ST500will matchST500LM0001.--noBannerβ suppress the text banner that displays each timeopenSeaChestis run. bye bye banner π--onlyFW [firmware revision]β run on all drives matching the provided firmware revision. This one only does an exact match, no fuzzy vibes.--onlySeagateβ match only Seagate drives for the options provided.-q,--quietβ runopenSeaChest_Configurein quiet mode. Same as-v 0or--verbose 0. shhh π€«-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 3or--verbose 3.-V,--versionβ showopenSeaChest_Configureversion and copyright information & exit.
β¨ Utility Arguments β¨
-d,--device [deviceHandle | all]β use this with most commands to specify the device handle on which to perform an operation. Example:/dev/sg<#>. CSMI device handles can be specified as<error<#><#><#>>. 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. π«Ά
-F,--scanFlags [option list]β control the output from scan with the options listed below. Multiple options can be combined:ata- show only ATA (SATA) devicesusb- show only USB devicesscsi- show only SCSI (SAS) devicesnvme- show only NVMe devicesinterfaceATA- show devices on an ATA interfaceinterfaceUSB- show devices on a USB interfaceinterfaceSCSI- show devices on a SCSI or SAS interfaceinterfaceNVME= show devices on an NVMe interfacesd- show sd device handlessgtosd- show the sd and sg device handle mappingignoreCSMI- do not scan for any CSMI devicesallowDuplicates- allow drives with both CSMI and PD handles to show up multiple times in the list
-i,--deviceInfoβ show information and features for the storage device.--llInfoβ dump low-level information about the device to assist with debugging. detective mode π-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β same as--scanor-s, however it will also perform a low level rescan to pick up other devices. Heads up: this low level rescan may wake devices from low power states and may cause the OS to re-enumerate them. Use it 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. π (it's fine, it's just telling you what's wrong)--fastDiscoveryβ use this option to issue a fast scan on the specified drive. πββοΈπ¨--capacityModelNumberMappingβ use this option to display the capacity model number mapping TBD.--changeIdStringβ use this option to change ID string according to capacity - model number mapping. Need to use together with--setMaxLBAor--restoreMaxLBA.--configCDLSettings [fileName]
Okay so this option lets you change your CDL settings π
But heads up: the CDL Feature Set isn't supported on every device, so run --deviceInfo to check if CDL is even a thing on your drive. You'll pass a JSON file, and that's what gets read for the new CDL settings. If you wanna skip validation on that JSON, use --skipValidation. But if the settings you provided aren't valid, you're gonna get an error. Periodt.
--logMode [ raw | binary ]β team up with other options like--getNvmeLogPageand--deviceInfoto either show a buffer output or make a binary file. Supported modes:rawprints the raw buffer straight to stdout.binarywrites data to a file that includes the device Serial Number and a time stamp. β¨--phySpeed [0 | 1 | 2 | 3 | 4 | 5]β sets a new max PHY speed. On SAS, this hits all phys with that speed unless you also pass--sasPhyto pick one specific phy. The numbers mean:0= allow full negotiation (that's the default drive behavior, bestie).1= negotiate up to 1.5Gb/s.2= up to 3.0Gb/s.3= up to 6.0Gb/s.4= up to 12.0Gb/s (SAS Only, iykyk).5= up to 22.5Gb/s (SAS Only).
NOTE: SATA phy speed changes? Only on Seagate drives, periodt.
WARNING: Check the minimum phy speed your adapter supports before you touch this. If you set a phy speed below what the adapter can do, the drive will ghost the adapter and the OS completely. π
WARNING: Changing Phy speed can affect all LUNs/namespaces on devices with multiple logical units or namespaces. So don't be shocked.
--readLookAhead [info | enable | disable]β toggles read look-ahead on your drive. Hitinfoto see the current status of that feature. π¦
WARNING: Changing Read look-ahead may affect all LUNs/namespaces on devices with multiple logical units or namespaces. So yeah, it's giving global impact.
--restoreMaxLBAβ puts the max accessible address back to the drive's native size. After this, you need a power cycle before setting a new max LBA. No shortcuts. π--setMaxLBA newMaxLBAβ sets the max accessible address to anything less than the device's default native size. Same deal: power cycle required after this before you reset or set a new max LBA. π--showCDLSettings [raw | json]β shows off your current CDL settings. Only drives that actually support CDL will show anything, and only the supported CDL settings appear. Output modes:raw= show current CDL settings right on screen.json= create a JSON file with the current CDL settings. For time-related fields in the output, the units are:s= seconds,ms= milliseconds,us= microseconds,500 ns= 500 nanoseconds (SAS only),10 ms= 10 milliseconds (SAS only),500 ms= 500 milliseconds (SAS only). β±οΈ--setTimestampβ sets the date and time timestamp on the device to whatever your current system clock says. Main character energy, syncing up. π--writeCache [info | enable | disable]β enables or disables write cache on a drive. Passinfoto see the current status of that feature. π
WARNING: Changing Write Cache may affect all LUNs/namespaces on devices with multiple logical units or namespaces. It's a whole thing.
SATA Only π
--CDLfeature [enable | disable]β turns Command Duration Limit (CDL) support on or off for devices. To disable CDL, use--CDLfeature disable. Again, CDL Feature Set isn't on every device, so check with--deviceInfoto see if it's supported. β¨--dcoFreezeLock (SATA Only)β issues the DCO freeze-lock command. Once you do this, you cannot modify available capabilities or restore default capabilities until the device gets a power cycle. It's locked locked. π--dcoIdentify (SATA Only)β lists the capabilities that DCO can restrict. Those restricted capabilities are MWDMA and UDMA transfer modes, maximum LBA, and some ATA features or commands. This won't work if the device is DCO frozen.
NOTE: Some motherboards will issue a DCO freezelock when they boot. If DCO is frozen every time you reboot, try a different system or an add-in card to work around it. Annoying, but that's the tea. β
--dcoRestore (SATA Only)β restores device capabilities and features that DCO hid back to factory defaults. Only works if DCO is not frozen and HPA hasn't already been used to reduce the maximum LBA. For best results, restore the max LBA before using this option.
NOTE: Some motherboards issue a DCO freezelock when booted. If DCO is frozen every reboot, try a different system or add-in card. Workaround queen. π
--dcoSetMaxLBA [new max LBA] (SATA Only)β sets a lower max/native max LBA using the DCO feature. Combine it with--dcoSetMaxModeand--dcoDisableFeatso you can make all DCO-related changes at the same time in one command. This won't work if the device is DCO frozen.
NOTE: Some motherboards issue a DCO freezelock on boot. If DCO freezes every reboot, try another system or add-in card. π
--dcoSetMaxMode [udma# | mwdma# | nodma] (SATA Only)β sets a different maximum supported DMA transfer mode using DCO. Combine with--dcoSetMaxLBAand--dcoDisableFeatto make all DCO-related changes in one command. Available arguments: the supported modes get set based on the provided maximum, and all modes below the given maximum too. So:udma6= UDMA 6 and lower, including all MWDMA modes.udma5= UDMA 5 and lower, including all MWDMA modes.udma4= UDMA 4 and lower, including all MWDMA modes.udma3= UDMA 3 and lower, including all MWDMA modes.udma2= UDMA 2 and lower, including all MWDMA modes.udma1= UDMA 1 and lower, including all MWDMA modes.udma0= UDMA 0 and lower, including all MWDMA modes.mwdma2= MWDMA 2 and lower; No UDMA support.mwdma1= MWDMA 1 and lower; No UDMA support.mwdma0= MWDMA 0 and lower; No UDMA support.nodma= No MWDMA or UDMA mode support listed in identify. This won't work if the device is DCO frozen.
NOTE: Some motherboards issue a DCO freezelock when booted. If DCO is frozen every reboot, try a different system or add-in card. π
--dcoDisableFeat [csv,list,of,features] (SATA Only)β disables different ATA commands and features using DCO. Combine with--dcoSetMaxLBAand--dcoSetMaxModeto do all DCO-related changes in one command. Available arguments: if you specify a feature the drive doesn't support restricting (or doesn't support at all), that's not an error. Full list of features you can give:wrv= Write-Read-Verify feature.smtCvSt= SMART Conveyance self-test.smtSelSt= SMART Seledtive self-test.fua= Forced Unit Access.tlc= Time Limited Commands.streaming= Streaming Feature set.48b= 48bit addressing.hpa= Host Protected Area (HPA).aam= Automatic Accoustic Management.tcq= Tagged Command Queuing (TCQ).puis= Power Up In Standby (PUIS).sec= ATA Security.smtErrLog= SMART Error Logging.smtSt= SMART Self-test.smart= SMART Feature set.ssp= SATA Software Settings Preservation (SSP).asyncNot= SATA Asynchronous Notification.ipm= SATA Interface Power Management.nzBuff= SATA Non-Zero Buffer Offsets.ncq= SATA Native Command Queuing (NCQ).nvc= Non-Volatile Cache (NVCache).nvcpm= NVCache Power Management.wue= Write Uncorrectable Ext.tcg= Trusted Computing Group.ffc= Free-fall Control.dsm= Data Set Management.trim= TRIM (Data Set Management).epc= Extended Power Conditions. Also, it's unlikely a drive will support restricting all of these features, so don't expect a full sweep. This won't work if the device is DCO frozen.
NOTE: Some motherboards issue a DCO freezelock when booted. If DCO is frozen every reboot, try a different system or add-in card. π
--freeFall [info | enable | disable | sensitivity value] (SATA only)β configures the Free Fall control feature on some SATA drives. This feature lets the drive take action if it detects it's in free fall, so it can protect your data from a drop. Arguments:info= see the current sensitivity value.enable= sets sensitivity to the vendor's recommended value.disable= turns off free fall control.sensitivity value= set a value between 1 and 255 to control how sensitive the detection is. A value of zero sets the vendor's recommended value. πͺ--lowCurrentSpinup [ low | ultra | disable ] (SATA Only) (Seagate Only)β sets the state of the low current spinup feature on Seagate SATA drives. When enabled forloworultralow mode, the drive takes longer to spin up and become ready.
Note: This feature isn't available on every drive.
Note: Some products supportlow, but not theultralow current spinup mode. So check first. π
--puisFeature [ info | spinup | enable | disable ] (SATA Only)β enables or disables the power up in standby (PUIS) feature on SATA drives. Arguments:info= display information about the PUIS support on the device.spinup= issue the PUIS spinup set features command to spin up the device to active/idle state.enable= enable the PUIS feature using setfeatures command.disable= disable the PUIS feature using setfeatures command.
Note: If this is configured on the drive with a jumper, this command will fail. So don't fight the jumper. π§
β οΈ Note2: Not all products support this feature. WARNING: Before enabling this feature on any SAS/SATA HBA, check the HBA documentation to see if this feature is supported by the HBA. Enabling this on an HBA that does not support this feature will cause the drive to stop showing up to the host OS or even in the HBA's firmware/BIOS/UEFI configuration. ππ
--sscFeature [info | default | enable | disable](SATA Only) (Seagate Only) β okay so this one changes or peeks at the SSC (Spread Spectrum Clocking) mode on a Seagate SATA drive. π¦ Only change this setting if you are experiencing compatibility problems with the drive in a system, bestie. fr fr.infoβ show current SSC state πdefaultβ set to drive default modeenableβ enable SSCdisableβ disable SSC
--sctReadTimer [info | value | default](SATA Only) β use this to set the read command timer value for synchronous commands and NCQ commands with in-order data delivery enabled. β±οΈ Quick heads up: this timer starts at the time that the drive processes the command, not the time it is received.
When using this option, the setting is non-volatile. Use this with the --volatile flag to make the setting volatile. π
Use the info argument to get the current status of the read timer. A value of 0 means that all possible error recovery will be performed before returning status. Other values should include a unit to know the time to use β and if no unit is provided, it is assumed to be the value * 100 ms. π«Ά
Ex1: --sctReadTimer 15s for a 15 second timer.
Ex2: --sctReadTimer 15000ms for a 15 second timer expressed in milliseconds
Ex2: --sctReadTimer 150 for a 15 second timer with no units specified
The maximum time that can be specified is 1 hour, 49 minutes, 13 seconds. β Using the default argument restores default settings.
Note: On some SAT HBAs/bridges, status will not be able to be determined due to HBA/bridge limitations. π
--sctWriteCache [info | enable | disable | default](SATA Only) β turn write cache support on or off on a drive using SMART command transport. π§
When using this option, the setting is non-volatile. Use this with the --volatile flag to make the setting volatile.
Lowkey important: when using this option, the --writeCache option will always return success, but no write cache changes will occur. This follows the ATA spec. π Using the default argument returns the drive to default settings and allows the --writeCache option to work again. And use the info argument to get the current status of the write cache feature. π
Note: On some SAT HBAs/bridges, status will not be able to be determined due to HBA/bridge limitations.
--sctWriteCacheReordering [info | enable | disable | default](SATA Only) β enable or disable write cache reordering support on a drive using SMART command transport. Write cache reordering allows the drive to reorder moving data out of cache to media for better performance on synchronous commands. π Asynchronous commands are only affected when in-order data delivery is enabled.
When using this option, the setting is non-volatile. Use this with the --volatile flag to make the setting volatile. Use the info argument to get the current status of the write cache reordering feature. β¨
Note: On some SAT HBAs/bridges, status will not be able to be determined due to HBA/bridge limitations.
--sctWriteTimer [info | value | default](SATA Only) β sets the write command timer value for synchronous commands and NCQ commands with in-order data delivery enabled. β±οΈ And yup, this timer starts at the time that the drive processes the command, not the time it is received.
When using this option, the setting is non-volatile. Use this with the --volatile flag to make the setting volatile. π
Use the info argument to get the current status of the write timer. A value of 0 means that all possible error recovery will be performed before returning status. Other values should include a unit to know the time to use β if no unit is provided, it is assumed to be the value * 100 ms. πΈ
Ex1: --sctWriteTimer 15s for a 15 second timer.
Ex2: --sctWriteTimer 15000ms for a 15 second timer expressed in milliseconds
Ex2: --sctWriteTimer 150 for a 15 second timer with no units specified
The maximum time that can be specified is 1 hour, 49 minutes, 13 seconds. π Using the default argument restores default settings.
Note: On some SAT HBAs/bridges, status will not be able to be determined due to HBA/bridge limitations.
--wrv [ info | all | vendor | # | disable ](SATA Only) β this one can report the current configuration of the ATA Write-Read-Verify feature, enable the feature, or disable the feature. π Enabling this feature instructs the device to perform a verification of all data after it has been written. Enabling this may result in lower device performance. π¬ If write caching is enabled, this feature may return completion before writing to the medium and verifying the medium. If write caching is disabled, the write and verification must complete before returning command status.
Argument usage:
infoβ Display the current status of the feature πallβ set verification on for all written sectorsvendorβ set verification for the 1st vendor specific number of sectors.#β Perform verification for the first user defined number of sectors. Note: This is rounded up to the nearest1024sectors. Max value of261120sectors. π₯disableβ disable the Write-Read-Verify feature.
SAS Only π§
--nvCache [info | enable | disable](SAS Only) β enable or disable the SCSI Non-Volatile cache on a drive. ποΈ Use theinfoargument to get the current status of the Non-Volatile Cache setting.
WARNING: Changing NV Cache may affect all LUNs/namespaces for devices with multiple logical units or namespaces. β οΈ
--readyLED [info | on | off | default](SAS Only) β get the current state or change the behavior of the ready LED. π‘ See the SPL spec for full details on how this changes LED.infoβ gets the current state of the ready LED.onβ sets the ready LED to usually off unless processing a command.offβ sets the ready LED to usually on unless processing a commanddefaultβ sets the ready LED to the drive's default value
WARNING: The EPC settings may affect all LUNs/namespaces for devices with multiple logical units or namespaces.
--sasPhy [phy number](SAS Only) β use this to specify a specific phy to use with another option that uses a phy identifier value. π Some tool options will assume all SAS Phys when this option is not present. Others will produce an error when a specific phy is needed for an operation. Use the-ioption to learn more about the supported phys.--scsiLPReset [cumulative | threshold | defCumulative | defThreshold | all](SAS only) β reset all SCSI Log Pages. π If the device is compliant with SPC4 or later, the--scsiLPResetPageoption may be used to specify a specific page to reset. The--volatileoption may also be passed to prevent saving changes.cumulativeβ reset the cumulative valuesthresholdβ reset the threshold valuesdefCumulativeβ reset the cumulative values to default without saving.defThresholdβ reset the threshold values to default without saving.allβ sends the log page reset command to all of the above control values
WARNING: Resetting log pages may affect all LUNs/namespaces for devices with multiple logical units or namespaces.
--scsiLPResetPage [page# | page-subpage#](SAS only) β this option is used to specify a specific page, and/or subpage to be used with the--scsiLPResetoption. NOTE: This option will only work on newer drives compliant with the SPC4 specification. π
WARNING: Resetting log pages may affect all LUNs/namespaces for devices with multiple logical units or namespaces.
--scsiMPReset [page# | page-subpage#](SAS only) β this option will reset the specified mode page(s) to their default settings. Valid page numbers range from0to3Fh. Valid subpage numbers range from0toFFh. (MP) Mode page3Fhspecifies all mode pages and can be used to reset all mode pages. (SP) SubpageFFhspecifies all subpages of a given page and will reset all those subpages. Using both MP3Fhand SPFFhwill reset all pages and subpages on a device. π«Ά
WARNING: Resetting mode pages may affect all LUNs/namespaces for devices with multiple logical units or namespaces.
--scsiMPRestore [page# | page-subpage#](SAS only) β this option will restore the specified mode page(s) to their saved settings. Valid page numbers range from0to3Fh. Valid subpage numbers range from0toFFh. (MP) Mode page3Fhspecifies all mode pages and can be used to restore all mode pages. (SP) SubpageFFHspecifies all subpages of a given page and will restore all those subpages. Using both MP3Fhand SPFFhwill restore all pages and subpages on a device. β¨
WARNING: Restoring mode pages may affect all LUNs/namespaces for devices with multiple logical units or namespaces.
--scsiMPSave [page# | page-subpage#](SAS only) β this option will save the current specified mode page(s) to the saved settings. Valid page numbers range from0to3Fh. Valid subpage numbers range from0toFFh. (MP) Mode page3Fhspecifies all mode pages and can be used to save all mode pages. (SP) SubpageFFHspecifies all subpages of a given page and will save all those subpages. Using both MP3Fhand SPFFhwill save all pages and subpages on a device. π
WARNING: Saving mode pages may affect all LUNs/namespaces for devices with multiple logical units or namespaces.
--setSCSIMP [ mp[-sp]:byte:highestBit:fieldWidthInBits=value | file=filename.txt ](SAS only)
Okay bestie, picking up right where we left off β no recap, let's go π
- the set-a-field-in-a-mode-page option β use this one to set a specific field in a mode page to a value. And the way this option is built? It's giving β¨choose your own adventureβ¨ because there are two argument formats:
- Format one expects a mode page (in hex), optionally a subpage code (in hex), the byte offset that the field starts at (in decimal), the highest bit the field starts at (
0-7), the width of the field in as a number of bits (decimal), and the value to set (hex or decimal). A maximum of64bits can be set at a time with this option. π«Ά - Format two is a text file that contains all bytes of the mode page in hex. Each byte must be separated by a space, new line, or underscore. It is recommended that this file is created by copy-pasting the output of the
--showSCSIMPoption's default classic view, then modifying after that. iykyk π
β¨ Example use of the arguments β¨
- Setting WCE to zero on caching MP from a file:
command line: file=cachingModePage.txt
File contents: 88 12 10 00 FF FF 00 00 FF FF FF FF 90 20 00 00 00 00 00 00
- Setting WCE to zero on caching MP from command line:
command line: 08:2:2:1=0
- Setting DLC to one on Control Extension MP from command line:
command line: 0A-01:4:3:1=1
WARNING: Changing mode pages may affect all LUNs/namespaces for devices with multiple logical units or namespaces. Not a drill, bestie π
--showMPOutputMode [classic | buffer]β (SAS Only π¦) use this option to control the format of the output when displaying a SCSI mode page. Modes:classicβ this output is a classic output from old SCSI manuals where the bytes of the page are output in a rows across the screen in hexadecimal format.bufferβ this output is a formatted buffer showing offsets on the top and side in hex.- This will output each row with up to
16bytes of data before moving to the next row. Sixteen. Noted. β¨
--showSCSIMP [page# | page-subpage#]β (SAS only) this option will display the specified mode page on the screen as raw hexadecimal data bytes. Use--showSCSIMPControlto control the output. If--showSCSIMPControlis not provided, the current values will be shown. π
--showSCSIMPControl [current | default | saved | changeable | all]β (SAS only) use this option to control the output of the--showSCSIMPoption.currentβ show the current values of the mode page.defaultβ show the default values of the mode page.savedβ show the saved values of the mode page.changeableβ show the changable fields in a mode page.allβ show all of the above formats for a given mode page. All of them. Everything. The whole buffet. π
π Data Destructive Commands π
Buckle up, this is the part where you read twice before you press enter, fr fr π
--provision newMaxLBAβ provision your drive to a new max LBA to any value less than the device's current max LBA. A power cycle is required after this command before resetting the max LBA or changing the provisioning again. This command erases all data between the new maxLBA specified and the current maxLBA of the device. using aTRIM/UNMAPcommand. π
Bestie. Bestie. This erases data. Read it again. Then read it again. Then decide. π
And then the page hits you with this whole vibe, straight up:
openSeaChest_Configure - openSeaChest drive utilities - NVMe Enabled Copyright (c) 2014-2026 Seagate Technology LLC and/or its Affiliates, All Rights Reserved openSeaChest_Configure Version: 26.03.2 X86_64 Build Date: May 18 2026 Today: 20260605T144114 User: current user
==========================================================================================
Version Info for openSeaChest_Configure:
Utility Version: 26.03.2 opensea-common Version: 6.1.0 opensea-transport Version: 10.3.0 opensea-operations Version: 9.4.0 Build Date: May 18 2026 Compiled Architecture: X86_64 Detected Endianness: Little Endian Compiler Used: GCC Compiler Version: 14.2.0 Operating System Type: Linux Operating System Version: 6.6.114-1 Operating System Name: Ubuntu 24.04.4 LTS
π SEE ALSO π
The full documentation for openSeaChest_Configure is maintained as a Texinfo manual. If the info and openSeaChest_Configure programs are properly installed at your site, the command
info openSeaChest_Configure
should give you access to the complete manual. π
And that's the whole page, bestie! π«Ά This is openSeaChest_Configure from June 2026, filed under OPENSEACHEST_CONFIGURE(1) β go read the real thing if you want it dressed up all proper, because openSeaChest_Configure ========... and slay, you made it to the end π¦β¨
π¦ where this page comes from
- nixpkgs unstable: openseachest 26.03.2
- ubuntu stonking: openseachest 26.03.2+ds-1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms