Technical requirements
As SCSI is a protocol used to communicate with peripheral devices, such as hard drives, some basic knowledge about the functioning of these devices will aid in understanding the SCSI subsystem.
The commands and examples presented in this chapter are distribution-agnostic and can be run on any Linux operating system, such as Debian, Ubuntu, Red Hat, or Fedora. There are quite a few references to the kernel source code. If you want to download the kernel source, you can download it from https://www.kernel.org.