bioctl —
RAID management interface
  
    | bioctl | device command
      [arg [...]] | 
RAID device drivers which support management functionality can register their
  services with the bio(4) driver.
  bioctl then can be used to manage the RAID
  controller's properties.
The following commands are supported:
  - show[disks | volumes]
- Without any argument by default bioctlwill show
      information about all volumes and the logical disks used on them. If
      disks is specified, only information about physical
      disks will be shown. If volumes is specified, only
      information about the volumes will be shown.
- alarm[disable | enable |
    silence | test]
- Control the RAID card's alarm functionality, if supported. By default if
      no argument is specified, its current state will be shown. Optionally the
      disable, enable,
      silence, or test arguments may
      be specified to enable, disable, silence, or test the RAID card's
    alarm.
- blinkstart channel:target.lun | stop
    channel:target.lun
- Instruct the device at channel:target.lun to start
      or cease blinking, if there's
      ses(4) support in the
      enclosure.
- hotspareadd channel:target.lun | remove
    channel:target.lun
- Create or remove a hot-spare drive at location
      channel:target.lun.
- passthruadd DISKID channel:target.lun |
    remove channel:target.lun
- Create or remove a pass-through device. The
      DISKID argument specifies the disk that will be used
      for the new device, and it will be created at the location
      channel:target.lun. NOTE: Removing
      a pass-through device that has a mounted filesystem will lead to undefined
      behaviour.
- checkstart VOLID | stop VOLID
- Start or stop consistency volume check in the volume with index
      VOLID. NOTE: Not many RAID
      controllers support this feature.
- create
    volumeVOLID DISKIDs
    [SIZE] STRIPE RAID_LEVEL
    channel:target.lun
- Create a volume at index VOLID. The
      DISKIDs argument will specify the first and last
      disk, i.e.: 0-3 will use the disks 0, 1, 2, and 3. The
      SIZE argument is optional and may be specified if
      not all available disk space is wanted (also dependent of the
      RAID_LEVEL). The volume will have a stripe size
      defined in the STRIPE argument and it will be
      located at channel:target.lun.
- remove
    volumeVOLID channel:target.lun
- Remove a volume at index VOLID and located at
      channel:target.lun. NOTE: Removing
      a RAID volume that has a mounted filesystem will lead to undefined
      behaviour.
The following command, executed from the command line, shows the status of the
  volumes and its logical disks on the RAID controller:
$ bioctl arcmsr0 show
Volume Status       Size         Device/Label   RAID Level Stripe
=================================================================
     0 Building     468G  sd0 ARC-1210-VOL#00       RAID 6  128KB  0% done
   0:0 Online       234G         0:0.0 noencl <WDC WD2500YS-01SHB1 20.06C06>
   0:1 Online       234G         0:1.0 noencl <WDC WD2500YS-01SHB1 20.06C06>
   0:2 Online       234G         0:2.0 noencl <WDC WD2500YS-01SHB1 20.06C06>
   0:3 Online       234G         0:3.0 noencl <WDC WD2500YS-01SHB1 20.06C06>
 
To create a RAID 5 volume on the SCSI 0:15.0 location on the disks
    0, 1, 2, and 3, with stripe size of 64Kb on the first volume ID, using all
    available free space on the disks:
$ bioctl arcmsr0 create volume 0 0-3
  64 5 0:15.0
To remove the volume 0 previously created at the SCSI 0:15.0
    location:
$ bioctl arcmsr0 remove volume 0
  0:15.0
The bioctl command appeared in OpenBSD
  3.8, it first appeared in NetBSD 4.0 and was
  rewritten for NetBSD 5.0.