If the usual command :
echo “- - -“ > /sys/class/scsi_host/hostX/scan
doesn’t work for FC target, you can try this:
echo 1 > /sys/devices/{PCI-DEVICE-ID} /rescan
The path is the device path to the FC target,which may have multiple paths. The scsi-rescan(rescan-scsi-bus.sh) tool in sg3_utils worked great for new LUN but it couldn’t detect the new size of existing LUN neither. The following procedure was tested in RHEL 6.3.
#Find the PCI ID of your device>lspci | grep -i qlogic15:00.0 Fibre Channel: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA (rev 02)1a:00.0 Fibre Channel: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA (rev 02)#Find the file rescan in /sys/devices by filtering PCI ids found above>find /sys/devices -name rescan | egrep '15:00|1a:00'/sys/devices/pci0000:00/0000:00:03.0/0000:15:00.0/rescan/sys/devices/pci0000:00/0000:00:03.0/0000:15:00.0/host1/rport-1:0-0/target1:0:0/1:0:0:0/rescan/sys/devices/pci0000:00/0000:00:03.0/0000:15:00.0/host1/rport-1:0-1/target1:0:1/1:0:1:0/rescan/sys/devices/pci0000:00/0000:00:07.0/0000:1a:00.0/rescan/sys/devices/pci0000:00/0000:00:07.0/0000:1a:00.0/host2/rport-2:0-0/target2:0:0/2:0:0:0/rescan/sys/devices/pci0000:00/0000:00:07.0/0000:1a:00.0/host2/rport-2:0-1/target2:0:1/2:0:1:0/rescan#kick off rescan by updating rescan file in each portecho 1 > /sys/devices/pci0000:00/0000:00:03.0/0000:15:00.0/host1/rport-1:0-0/target1:0:0/1:0:0:0/rescanecho 1 > /sys/devices/pci0000:00/0000:00:03.0/0000:15:00.0/host1/rport-1:0-1/target1:0:1/1:0:1:0/rescanecho 1 > /sys/devices/pci0000:00/0000:00:07.0/0000:1a:00.0/host2/rport-2:0-0/target2:0:0/2:0:0:0/rescanecho 1 > /sys/devices/pci0000:00/0000:00:07.0/0000:1a:00.0/host2/rport-2:0-1/target2:0:1/2:0:1:0/rescan# messages log file show that the new size was detected.>tail -f /var/log/messagesSep 19 09:56:10 server1 kernel: sd 1:0:1:0: [sdc] 12884901888 512-byte logical blocks: (6.59 TB/6.00 TiB)Sep 19 09:56:10 server1 kernel: sdc: detected capacity change from 5497558138880 to 6597069766656Sep 19 10:05:57 server1 kernel: sd 1:0:0:0: [sdb] 15032385536 512-byte logical blocks: (7.69 TB/7.00 TiB)Sep 19 10:05:57 server1 kernel: sdb: detected capacity change from 6597069766656 to 7696581394432Sep 19 10:05:57 server1 kernel: sd 1:0:1:0: [sdc] 15032385536 512-byte logical blocks: (7.69 TB/7.00 TiB)Sep 19 10:05:57 server1 kernel: sdc: detected capacity change from 6597069766656 to 7696581394432Sep 19 10:05:57 server1 kernel: sd 2:0:0:0: [sdd] 15032385536 512-byte logical blocks: (7.69 TB/7.00 TiB)Sep 19 10:05:57 server1 kernel: sdd: detected capacity change from 6597069766656 to 7696581394432Sep 19 10:05:58 server1 kernel: sd 2:0:1:0: [sde] 15032385536 512-byte logical blocks: (7.69 TB/7.00 TiB)Sep 19 10:05:58 server1 kernel: sde: detected capacity change from 6597069766656 to 7696581394432