If there is one thing that takes up the majority of a system administrator's day, it would have to be storage management. It seems that disks are always running out of free space, becoming overloaded with too much I/O activity, or failing unexpectedly. Therefore, it is vital to have a solid working knowledge of disk storage in order to be a successful system administrator.
To start, let us see how disk devices are named under Red Hat Linux.
As with all Linux-like operating systems, Red Hat Linux uses device files to access all hardware (including disk drives). However, most of these operating systems use slightly different naming conventions to identify any attached storage devices. Here is how these device files are named under Red Hat Linux.
Under Red Hat Linux, the device files for disk drives appear in the /dev/ directory. The format for each file name depends on several aspects of the actual hardware, and how it has been configured. Here are these aspects:
Device type
Unit
Partition
We will now explore each of these aspects in more detail.
The first two letters of the device file name refer to the specific type of device. For disk drives, there are two device types that are most common:
sd — The device is SCSI-based
hd — The device is IDE-based
SCSI and IDE are two different industry standards that define methods for attaching devices to a computer system. The following sections briefly describe the characteristics of these two different connection technologies.
Formally known as the Small Computer System Interface, the SCSI standard defines a bus along which multiple devices may be connected. A SCSI bus is a parallel bus, meaning that there is a single set of parallel wires that go from device to device. Because these wires are shared by all devices, it is necessary to have a way of uniquely identifying and communicating with an individual device. This is done by assigning each device on a SCSI bus a unique numeric address or SCSI ID.
Important | |
---|---|
The number of devices that are supported on a SCSI bus depends on the width of the bus. Regular SCSI supports 8 uniquely-addressed devices, while wide SCSI supports 16. In either case, you must make sure that all devices are set to use a unique SCSI ID. Two devices sharing a single ID will cause problems that could lead to data corruption before it can be resolved. One other thing to keep in mind is that every device on the bus uses an ID. This includes the SCSI controller. Quite often system administrators forget this, and unwittingly set a device to use the same SCSI ID as the bus's controller. This also means that, in practice, only 7 (or 15, for wide SCSI) devices may be present on a single bus, as each bus must include its own controller. |
As technological advances have taken place, the SCSI standard has been amended to support them. For instance, the number of wires that carried data along the bus went from 8 (known simply as SCSI) to 16 (known as wide SCSI). As it became possible to build faster hardware, and the speed at which data could be transferred increased, the bus speed increased from 5MB/sec to as much as 160MB/sec. The different bus speeds are identified by adding words like "fast", "ultra", and "ultra-3" to the name of the SCSI environment being supported.
Because of SCSI's bus-oriented architecture, it is necessary to properly terminate both ends of the bus. Termination is accomplished by placing a load of the correct impedance on each conductor comprising the SCSI bus. Termination is an electrical requirement; without it, the various signals present on the bus would be reflected off the ends of the bus, garbling all communication.
Many (but not all) SCSI devices come with internal terminators that can be enabled or disabled using jumpers or switches. External terminators are also available.
IDE stands for Integrated Drive Electronics. A later version of the standard — known as EIDE (the extra "E" standing for "Enhanced") has been almost universally adopted in place of IDE. However, in normal conversation both are known as IDE. Like SCSI, IDE is an interface standard used to connect devices to computer systems. Like SCSI, IDE implements a bus topology.
However, there are differences between the two standards. The most important is that IDE cannot match SCSI's expandability, with each IDE bus supporting only two devices (known as a master and a slave).
Following the two-letter device type (sd, for example) are one or two letters denoting the specific unit. The unit designator starts with "a" for the first unit, "b" for the second, and so on. Therefore, the first hard drive on your system may appear as hda or sda.
Tip | |
---|---|
SCSI's ability to address large numbers of devices necessitated the addition of a second unit character to support systems with more than 26 SCSI devices attached. Therefore, the first 26 SCSI hard drives would be named sda through sdz, with the 27th named sdaa, the 28th named sdab, and so on through to sddx. |
The final part of the device file name is a number representing a specific partition on the device, starting with "1". The number may be one or two digits in length, depending on the number of partitions written to the specific device.
Once the format for device file names is known, it is easy to understand what each refers to:
/dev/hda1 — The first partition on the first IDE drive
/dev/sdb12 — The twelfth partition on the second SCSI drive
/dev/sdad4 — The fourth partition on the thirtieth SCSI drive
There are instances where it is necessary to access the entire device, and not just a specific partition. This is normally done when the device is not partitioned, or does not support standard partitions (such as a CD-ROM drive). In these cases, the partition number is omitted:
/dev/hdc — The entire third IDE device
/dev/sdb — The entire second SCSI device
However, most disk drives use partitions; the next section will take a closer look at this method of storage division.