Chapter 31. Adding a Storage Device or Path
/dev/disk/by-pathname, for example) the system assigns to the new device may have been previously in use by a device that has since been removed. As such, ensure that all old references to the path-based device name have been removed. Otherwise, the new device may be mistaken for the old device.
Procedure 31.1. Add a storage device or path
- The first step in adding a storage device or path is to physically enable access to the new storage device, or a new path to an existing device. This is done using vendor-specific commands at the Fibre Channel or iSCSI storage server. When doing so, note the LUN value for the new storage that will be presented to your host. If the storage server is Fibre Channel, also take note of the World Wide Node Name (WWNN) of the storage server, and determine whether there is a single WWNN for all ports on the storage server. If this is not the case, note the World Wide Port Name (WWPN) for each port that will be used to access the new LUN.
- Next, make the operating system aware of the new storage device, or path to an existing device. The recommended command to use is:
$ echo "c t l" > /sys/class/scsi_host/hosth/scanIn the previous command,
his the HBA number,
cis the channel on the HBA,
tis the SCSI target ID, and
lis the LUN.
NoteThe older form of this command,
echo "scsi add-single-device 0 0 0 0" > /proc/scsi/scsi, is deprecated.
For Fibre Channel storage servers that implement a single WWNN for all ports, you can determine the correct
- In some Fibre Channel hardware, a newly created LUN on the RAID array may not be visible to the operating system until a Loop Initialization Protocol (LIP) operation is performed. Refer to Chapter 34, Scanning Storage Interconnects for instructions on how to do this.
ImportantIt will be necessary to stop I/O while this operation is executed if an LIP is required.
- If a new LUN has been added on the RAID array but is still not being configured by the operating system, confirm the list of LUNs being exported by the array using the
sg_lunscommand, part of the sg3_utils package. This will issue the
SCSI REPORT LUNScommand to the RAID array and return a list of LUNs that are present.
tvalues (i.e. HBA number, HBA channel, and SCSI target ID) by searching for the WWNN in
Example 31.1. Determin correct
tvaluesFor example, if the WWNN of the storage server is
$ grep 5006016090203181 /sys/class/fc_transport/*/node_nameThis should display output similar to the following:
/sys/class/fc_transport/target5:0:2/node_name:0x5006016090203181 /sys/class/fc_transport/target5:0:3/node_name:0x5006016090203181 /sys/class/fc_transport/target6:0:2/node_name:0x5006016090203181 /sys/class/fc_transport/target6:0:3/node_name:0x5006016090203181This indicates there are four Fibre Channel routes to this target (two single-channel HBAs, each leading to two storage ports). Assuming a LUN value is
56, then the following command will configure the first path:
$ echo "0 2 56" > /sys/class/scsi_host/host5/scanThis must be done for each path to the new device.For Fibre Channel storage servers that do not implement a single WWNN for all ports, you can determine the correct HBA number, HBA channel, and SCSI target ID by searching for each of the WWPNs in
sysfs.Another way to determine the HBA number, HBA channel, and SCSI target ID is to refer to another device that is already configured on the same path as the new device. This can be done with various commands, such as
multipath -l, and
ls -l /dev/disk/by-*. This information, plus the LUN number of the new device, can be used as shown above to probe and configure that path to the new device.
- After adding all the SCSI paths to the device, execute the
multipathcommand, and check to see that the device has been properly configured. At this point, the device can be added to
mount, for example.