RHEL: Handling SCSI disks
Article Number: 63 | Rating: Unrated | Last Updated: Sun, May 27, 2018 8:41 PM
# Tested on RHEL 5, 6 & 7
# Check devices currently known to the SCSI subsystem
# ------------------------------------------------------------------------------------------
cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: VMware Model: Virtual disk Rev: 1.0
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 00
Vendor: VMware Model: Virtual disk Rev: 1.0
Type: Direct-Access ANSI SCSI revision: 02
# NOTE: 'lsscsi' command can be used to display disks attached to server
# Identify a disk using 'scsi_id' command
# ------------------------------------------------------------------------------------------
# 'scsi_id' queries a SCSI device via the SCSI INQUIRY vital product data (VPD)
# page 0x80 or 0x83 and uses the resulting data to generate a value that is
# unique across all SCSI devices that properly support page 0x80 or page 0x83.
# It may be useful, for instance, to identify a disk shared by two nodes:
hostA:/#> scsi_id --page=0x83 --whitelisted --device=/dev/sdd
36000c290d59b294f402f949a10afd541
36000c290d59b294f402f949a10afd541
hostB:/#> scsi_id --page=0x83 --whitelisted --device=/dev/sde
36000c290d59b294f402f949a10afd541
36000c290d59b294f402f949a10afd541
# Depending on RHEL version, parameters and command location may vary slightly.
# More information about command usage:
# https://sites.google.com/site/syscookbook/rhel/rhel-scsi-identifier-show
# Add a SCSI disk to the system
# ------------------------------------------------------------------------------------------
# On this server we have: Host=0 (scsi0), Channel=0, Id=[0|1] and Lun=0 For a new disk
# we have to use, then, path 0.0.2.0 - SCSI(0:2).
# Once new disk has been attached/added to server, run following command to discover it:
echo "0 2 0" > /sys/class/scsi_host/host0/scan
# Alternatively we can run following commands in order to run a complete rescan:
for i in /sys/class/scsi_host/host*/scan; do echo "- - -" > $i; done
# Check
cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: VMware Model: Virtual disk Rev: 1.0
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 00
Vendor: VMware Model: Virtual disk Rev: 1.0
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 02 Lun: 00 <--
Vendor: VMware Model: Virtual disk Rev: 1.0
Type: Direct-Access ANSI SCSI revision: 02
lvmdiskscan
/dev/ramdisk [ 16.00 MB]
/dev/root [ 8.00 GB]
/dev/ram [ 16.00 MB]
/dev/sda1 [ 258.83 MB]
/dev/dm-1 [ 64.00 MB]
/dev/ram2 [ 16.00 MB]
/dev/sda2 [ 258.86 MB]
/dev/dm-2 [ 2.00 GB]
/dev/ram3 [ 16.00 MB]
/dev/sda3 [ 41.49 GB] LVM physical volume
/dev/dm-3 [ 2.00 GB]
/dev/sdb [ 45.00 GB] LVM physical volume
[...]
/dev/sdc [ 20.00 GB] <--
4 disks
37 partitions
1 LVM physical volume whole disk
1 LVM physical volume
fdisk -l
[...]
Disk /dev/sdc: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdc doesn't contain a valid partition table
# Remove a SCSI disk from the system
# ------------------------------------------------------------------------------------------
# To remove a disk from server, once it has been removed from VG, etc, run following command:
echo 1 > /sys/block/<sdc>/device/delete
# Check
cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: VMware Model: Virtual disk Rev: 1.0
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 00
Vendor: VMware Model: Virtual disk Rev: 1.0
Type: Direct-Access ANSI SCSI revision: 02