Projects / scsidev


scsidev builds a list of devices on your SCSI busses and creates device nodes to access them. The names are built based on their path, which is a 4-tuple consisting of the host adapter number, the channel number, the SCSI target ID, and the Logical Unit Number. Names build this way are much more persistent than the enumeration scheme used by the kernel (1st disk = sda, etc.). scsidev remembers the permissions of disappeared devices and restores the permissions properly when devices reappear. Optionally, it can create the devices as symbolic links to the main device nodes in /dev/, create missing device nodes, and handle missing permissions on the /dev/ nodes. You can assign alias names based on various pieces of information, such as vendor and model name. It also supports retrieving the serial number, the WWID, and the HSV OS ID and allows assigning names based on this information, thus providing a unique identification.

Operating Systems

Recent releases

  •  22 Aug 2005 15:19

    Release Notes: scsidev did not use the 2.6 kernel's sysfs info for tapes, resulting in missing tape devs. This has been fixed. scsidev now also uses the SG_IO interface if available rather than the old sg interface. The parser for the 0x83 VPD INQ page has been taught to parse AAN and EUI-64 and also the binary pre-SPC format.

    •  16 Sep 2004 00:28

      Release Notes: Many small bugs were fixed. sysfs has changed somewhat, and scsisdev has been adapted accordingly. Some limits have gone as well: longer host adapter names and partition names are possible now. A few bugfixes (dump page lengths, block vs. char dev creation, SCSI dev type overwriting in serial no retrieval, removal of the testdev dev node, and channel specification in scsi.alias) have been necessary. The quiet option works better now. To test missing sysfs support, -y has been added. ASCII T10 date from EVP INQ 0x82 can be displayed as well. scsi.alias can be placed elsewhere.

      •  16 Aug 2003 19:04

        Release Notes: A change in 2.29 that ensured that the oldnames (used in symlink mode) were correctly set for hard disk partitions had been lost in the previous release. This has now been fixed.

        •  09 Aug 2003 19:35

          Release Notes: scsidev now supports 2.6 kernels. The information that is added to /proc/scsi/scsi by the scsi-many patches is gathered from sysfs, excepting the information needed for char devices, which is missing. HSV OS IDs are now retrieved and can be used to assign aliases. Old names can be optionally built for SCSI CD-ROMs with scd instead of sr. The documentation was improved, and bugfixes were made.

          Recent comments

          26 Aug 2004 03:31 malkodan

          EMC + scsidev
          Had a problem with LUNs changing on every new configuration while connecting to an EMC disk array.

          scsidev definitely does the job if you have ~50 or more scsi disks connected and you might have to change configurations frequently.

          Good job.


          Project Spotlight


          A Fluent OpenStack client API for Java.


          Project Spotlight

          TurnKey TWiki Appliance

          A TWiki appliance that is easy to use and lightweight.