Change Block Size

Top  Previous  Next

Invoke the -capacitybs command to change the block size of your random access device



smartmon-ux -capacitybs NewBytesPerBlock DeviceList



smartmon-ux -capacitybs 520 /dev/sg3  (sets the block size to 520 bytes/block)


With few exceptions, disk drives are set to 512 bytes per block, and operating systems expect disks to be formatted to 512 bytes per block. In fact, some operating systems and/or disk controllers won't even "see" disks that aren't formatted to 512 bytes/block.  This command exists because certain RAID controllers require disks to be formatted to 520 or 528 bytes/block. If the disk isn't formatted to the appropriate block size then it just won't work with the required hardware.  Once this command has been accepted by the disk, and you invoke the -format function to reformat the disk, then you should be able to use it.


Warnings & Caveats

Once the block size is successfully changed, you need to power cycle the disk drive and use the -format command to complete the operation.  You can not use the disk drive until you reformat it.


RAID subsystem manufacturers have little motivation for allowing end-users to add their own disk drives. This isn't just for financial reasons, but for data integrity and reliability concerns.  Furthermore, RAID subsystem manufacturers invest a significant amount of R&D in having customized drive firmware.  As such, even if you take an off-the-shelf disk drive, and change the blocks size and all of the mode page settings to get it to match your RAID vendor's disk drive, then the RAID engine may still reject the disk.


SANtools is bound by numerous non-disclosure arrangements and we will not provide any advice relating to how one might reprogram or reformat a disk so you can get it to work in a specific RAID subsystem.


Let's say that you have the opposite problem.  You purchased used disk drives and it turns out that you can't format them because they aren't formatted to 512 bytes/block. You still have risk that the firmware on those disk drives will reject commands to change the block size.  It is not uncommon to have disk drives with specialized firmware that prevents you from changing the block size.   If the disk rejects the -capacitybs command, then the only way to change the block size is to flash new firmware on the disk drive. (Not just new firmware, but the correct firmware file)  As your disk drive firmware isn't our intellectual property, we are morally and legally prevented from sending anybody firmware.


The bottom line is that some disk/firmware combinations let you change the block size, and some don't. If  your disk rejects the -capacitybs command, then you must call your drive supplier/vendor, and ask them about getting some firmware that will let you change the block size.


This command does not get sent to ATA or SATA disk drives.