scsictl —
a program to manipulate SCSI devices and busses
  
    | scsictl | device command
      [arg [...]] | 
scsictl allows a user or system administrator to issue
  commands to and otherwise control SCSI devices and busses. It is used by
  specifying a device or bus to manipulate, the command to perform, and any
  arguments the command may require. scsictl determines
  if the specified device is an actual device or a SCSI bus automatically, and
  selects the appropriate command set.
For commands which scsictl issues a SCSI
    command to the device directly, any returned sense information will be
    decoded by scsictl and displayed to the standard
    output.
The following commands are supported for SCSI devices:
  - debuglevel
- Set the debugging level for the given device; the following flags are
      supported:
    
    
    
      - 1
- Show scsi commands, errors, data.
- 2
- Routine flow tracking.
- 4
- Internal info from routine flows.
- 8
- Device specific debugging.
 
 This option is only supported with kernels compiled with
        SCSIPI_DEBUG.
 
- defects[primary] [grown] [block|byte|physical]
- Read the primary and/or grown defect lists from the specified device in
      block, byte from index, or physical sector format. The default is to
      return both the primary and grown defect lists in physical sector format.
      This command is only supported on direct access devices.
- format[blocksize [immediate]]
- (Low level) format the named device. If the optional
      blocksizeparameter is provided, the device
      geometry will be modified to use the specifiedblocksize. If this parameter is different form the
      Current or Default Mode Page 3 parameters, the device will update Mode
      Page 3 at the successful completion of the Format. Device geometry may
      change as a result of using a new deviceblocksize. When the optionalblocksizeparameter is specified, the Defect List
      on the drive will revert to the original primary defect list created at
      the time of manufacture if available. The drive will usually recertify
      itself during the Format and add any other defective blocks to the new
      Defect List. Some disks may not support the ability to change the
      blocksize and may enter a Degraded Mode when fed a Format command of this
      type. If this happens the standard recovery for the drive requires issuing
      a correct Format command, i.e. one without the blocksize parameter.When the immediateparameter is also
        specified, the disk is instructed to return from the format command
        right away. It continues to format, and every ten secondsscsictlissues a TEST UNIT READY command to
        check the associated sense data. This associated sense data has a
        progress indicator which indicates how far the format is progressing.
        Note well that most SCSI disk drives prior to a few years ago do not
        support this option.
 
- identify
- Identify the specified device, displaying the device's SCSI bus, target,
      and lun, as well as the device's vendor, product, and revision
    strings.
- reassignblkno [blkno [...]]
- Issues a REASSIGN BLOCKScommand to the device,
      adding the specified blocks to the grown defect list. This command is only
      supported on direct access devices.
- release
- Send a “RELEASE” command to the device to release a
      reservation on it.
- reserve
- Send a “RESERVE” command to the device to place a
      reservation on it.
- reset
- Reset the device. This command is only supported for devices which support
      the SCIOCRESETioctl.
- start
- Send a “START” command to the device. This is useful
      typically only for disk devices.
- stop
- Send a “STOP” command to the device. This is useful
      typically only for disk devices.
- tur
- Send a “TEST UNIT READY” command to the device. This is
      useful for generating current device status.
- getcache
- Returns basic cache parameters for the device.
- setcachenone|r|w|rw [save]
- Set basic cache parameters for the device. The cache may be disabled
      (none), the read cache enabled (r), the write cache enabled (w), or both
      read and write cache enabled (rw). If the drive's cache parameters are
      savable, specifying save after the cache enable
      state will cause the parameters to be saved in non-volatile storage.
- flushcache
- Explicitly flushes the write cache.
- setspeedspeed
- Set the highest speed that the optical drive should use for reading data.
      The units are multiples of a single speed CDROM (150 KB/s). Specify 0 to
      use the drive's fastest speed.
- getrealloc
- Returns automatic reallocation parameters for the device.
- setreallocnone|r|w|rw [save]
- Set automatic reallocation parameters for the device. Automatic
      reallocation may be disabled (none), the automatic read reallocation
      enabled (r), the automatic write reallocation enabled (w), or both
      automatic read and write reallocation enabled (rw). If the drive's
      automatic reallocation parameters are savable, specifying
      save after the automatic reallocation enable state
      will cause the parameters to be saved in non-volatile storage.
- reportlunsnormal|wellknown|all|#
- Report Logical Units provided by the drive.
    
      - normal
- report all but well-known logical units. This is also the
        default.
- wellknown
- report the well known logical units instead. E.g.,
        
          - 0xc101h
- Addressable objects
- 0xc102h
- Addressable objects associations
- 0xc103h
- SCSI target device identification
 
- all
- report all logical units.
- #
- Use the given numeric select report value (0-255).
 
The following commands are supported for SCSI busses:
  - reset
- Reset the SCSI bus. This command is only supported if the host adapter
      supports the SCBUSIORESETioctl.
- scantarget lun
- Scan the SCSI bus for devices. This is useful if a device was not
      connected or powered on when the system was booted. The
      target and lun arguments
      specify which SCSI target and lun on the bus is to be scanned. Either may
      be wildcarded by specifying the keyword “any” or
      “all”.
- detachtarget lun
- Detach the specified device from the bus. Useful if a device is powered
      down after use. The target and
      lun arguments have the same meaning as for the
      scancommand, and may also be wildcarded.
When scanning the SCSI bus, information about newly recognized devices is
  printed to console. No information is printed for already probed devices.
/dev/scsibus* - for commands operating on SCSI busses
ioctl(2),
  cd(4),
  ch(4),
  scsi(4),
  sd(4),
  se(4),
  ss(4),
  st(4),
  uk(4),
  atactl(8),
  dkctl(8)
Thescsictl command first appeared in
  NetBSD 1.4.
The scsictl command was written by
  Jason R. Thorpe of the Numerical Aerospace Simulation
  Facility, NASA Ames Research Center.