SCSI subsystem documentation¶
The Linux Documentation Project (LDP) maintains a document describing the SCSI subsystem in the Linux kernel (lk) 2.4 series. See: https://www.tldp.org/HOWTO/SCSI-2.4-HOWTO . The LDP has single and multiple page HTML renderings as well as postscript and pdf.
Notes on using modules in the SCSI subsystem¶
The SCSI support in the Linux kernel can be modularized in a number of different ways depending upon the needs of the end user. To understand your options, we should first define a few terms.
The scsi-core (also known as the «mid level») contains the core of SCSI support. Without it you can do nothing with any of the other SCSI drivers. The SCSI core support can be a module (scsi_mod.o), or it can be built into the kernel. If the core is a module, it must be the first SCSI module loaded, and if you unload the modules, it will have to be the last one unloaded. In practice the modprobe and rmmod commands will enforce the correct ordering of loading and unloading modules in the SCSI subsystem.
The individual upper and lower level drivers can be loaded in any order once the SCSI core is present in the kernel (either compiled in or loaded as a module). The disk driver (sd_mod.o), CD-ROM driver (sr_mod.o), tape driver 1 (st.o) and SCSI generics driver (sg.o) represent the upper level drivers to support the various assorted devices which can be controlled. You can for example load the tape driver to use the tape drive, and then unload it once you have no further need for the driver (and release the associated memory).
The lower level drivers are the ones that support the individual cards that are supported for the hardware platform that you are running under. Those individual cards are often called Host Bus Adapters (HBAs). For example the aic7xxx.o driver is used to control all recent SCSI controller cards from Adaptec. Almost all lower level drivers can be built either as modules or built into the kernel.
There is a variant of the st driver for controlling OnStream tape devices. Its module name is osst.o .
SCSI subsystem documentation¶
The Linux Documentation Project (LDP) maintains a document describing the SCSI subsystem in the Linux kernel (lk) 2.4 series. See: https://www.tldp.org/HOWTO/SCSI-2.4-HOWTO . The LDP has single and multiple page HTML renderings as well as postscript and pdf.
Notes on using modules in the SCSI subsystem¶
The SCSI support in the Linux kernel can be modularized in a number of different ways depending upon the needs of the end user. To understand your options, we should first define a few terms.
The scsi-core (also known as the «mid level») contains the core of SCSI support. Without it you can do nothing with any of the other SCSI drivers. The SCSI core support can be a module (scsi_mod.o), or it can be built into the kernel. If the core is a module, it must be the first SCSI module loaded, and if you unload the modules, it will have to be the last one unloaded. In practice the modprobe and rmmod commands will enforce the correct ordering of loading and unloading modules in the SCSI subsystem.
The individual upper and lower level drivers can be loaded in any order once the SCSI core is present in the kernel (either compiled in or loaded as a module). The disk driver (sd_mod.o), CD-ROM driver (sr_mod.o), tape driver 1 (st.o) and SCSI generics driver (sg.o) represent the upper level drivers to support the various assorted devices which can be controlled. You can for example load the tape driver to use the tape drive, and then unload it once you have no further need for the driver (and release the associated memory).
The lower level drivers are the ones that support the individual cards that are supported for the hardware platform that you are running under. Those individual cards are often called Host Bus Adapters (HBAs). For example the aic7xxx.o driver is used to control all recent SCSI controller cards from Adaptec. Almost all lower level drivers can be built either as modules or built into the kernel.
There is a variant of the st driver for controlling OnStream tape devices. Its module name is osst.o .
SCSI subsystem documentation¶
The Linux Documentation Project (LDP) maintains a document describing the SCSI subsystem in the Linux kernel (lk) 2.4 series. See: https://www.tldp.org/HOWTO/SCSI-2.4-HOWTO . The LDP has single and multiple page HTML renderings as well as postscript and pdf.
Notes on using modules in the SCSI subsystem¶
The SCSI support in the Linux kernel can be modularized in a number of different ways depending upon the needs of the end user. To understand your options, we should first define a few terms.
The scsi-core (also known as the «mid level») contains the core of SCSI support. Without it you can do nothing with any of the other SCSI drivers. The SCSI core support can be a module (scsi_mod.o), or it can be built into the kernel. If the core is a module, it must be the first SCSI module loaded, and if you unload the modules, it will have to be the last one unloaded. In practice the modprobe and rmmod commands will enforce the correct ordering of loading and unloading modules in the SCSI subsystem.
The individual upper and lower level drivers can be loaded in any order once the SCSI core is present in the kernel (either compiled in or loaded as a module). The disk driver (sd_mod.o), CD-ROM driver (sr_mod.o), tape driver 1 (st.o) and SCSI generics driver (sg.o) represent the upper level drivers to support the various assorted devices which can be controlled. You can for example load the tape driver to use the tape drive, and then unload it once you have no further need for the driver (and release the associated memory).
The lower level drivers are the ones that support the individual cards that are supported for the hardware platform that you are running under. Those individual cards are often called Host Bus Adapters (HBAs). For example the aic7xxx.o driver is used to control all recent SCSI controller cards from Adaptec. Almost all lower level drivers can be built either as modules or built into the kernel.
There is a variant of the st driver for controlling OnStream tape devices. Its module name is osst.o .
SCSI and Linux
The Small Computer System Interface (SCSI) allows one to chain high speed devices to your computer.
Related YoLinux Tutorials:
SCSI devices under Linux are often named to suite the device. For example the first SCSI tape drive is /dev/st0. The first SCSI CD-ROM is /dev/scd0. These devices do not have partitions and do not use letter identifiers. SCSI disks are labled /dev/sda, /dev/sdb, /dev/sdc etc. to represent the first, second, third. SCSI hard drives but they do not reflect the SCSI ID. SCSI hard drive partitions are represented by an additional number. i.e. First drive first partition, /dev/sda1, second partition, /dev/sda2. The drive names are incremented across multiple SCSI HBA’s (cards) as if it is all one device. When using scanners, one uses the «raw» device name.
SCSI ID Number | Linux Device (raw name) |
0 | /dev/sga |
1 | /dev/sgb |
2 | /dev/sgc |
3 | /dev/sgd |
4 | /dev/sge |
5 | /dev/sgf |
6 | /dev/sgg |
7 | /dev/sgh |
The SCSI device number 7 is usually reserved for the SCSI card itself.
To list scsi devices on Linux system: cat /proc/scsi/scsi
SCSI will use a controller ID, channel ID, unit ID and LUN (Logical unit number).
List partition table: fdisk -l
- One can verify that the SCSI driver module has been loaded with the command: /sbin/lsmod
SCSI Interfaces and standards: