So usually when I am doing online capacity expansions of vmware/raid devices I use a tool called “rescan-scsi-bus.sh” and it works. It detects the size increase on the disk and then I run a resize2fs /dev/sdb or something like that.
Well, I have come across a time when this tool does not work and I need to do things the hard way. Luckily the hard way is rather simple.
- Get the SCSI id of the device you want to use. The tool “lsscsi” does this nicely
# lsscsi [1:0:0:0] cd/dvd NECVMWar VMware IDE CDR10 1.00 /dev/sr0 [2:0:0:0] disk VMware Virtual disk 1.0 /dev/sda [2:0:1:0] disk VMware Virtual disk 1.0 /dev/sdb
- Now comes the hard part, you need to tell the server to rescan this device.
echo 1 > /sys/bus/scsi/devices/2\:0\:1\:0/rescan
- And now you watch dmesg for the expansion message!
dmesg | grep change [4768364.446120] sdb: detected capacity change from 171798691840 to 268435456000 [4768364.834677] VFS: busy inodes on changed media or resized disk sdb