show disk size in Unix is a very popular request visitors use to arrive at my Unix Tutorial pages. Since I never addressed the question of confirming the number of hard drivers available on your system or the task of finding out a disk's capacity, I'd like to document a quick and easy way of doing just that.
I hope that when someone looks for a way to show disk size, what's really expected is a command to help you confirm the capacity of a disk in gigabytes.
Using fdisk command in Linux
One of the easiest ways to learn a lot about hard drives installed on your Linux system is to use the fdisk command:suse# fdisk -l
Disk /dev/sda: 145.4 GB, 145492017152 bytes 255 heads, 63 sectors/track, 17688 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 1 262 2104483+ 82 Linux swap / Solaris /dev/sda2 * 263 17688 139974345 83 Linux
As you can see, there are two sections in the output provided: disk information (capacity and geometry) and disk layout (partitions). The same pattern is repeated if you have more than one disk installed.
What you should look for is the lines starting with "Disk" word: they usually specify the device names for each drive and also provide the capacity in gigabytes. Thus, a time saver would be to grep the necessary information from the command above, this way:
suse# fdisk -l | grep Disk Disk /dev/sda: 145.4 GB, 145492017152 bytes
On a system with multiple disks, the output will look more useful:
redhat# fdisk -l | grep Disk Disk /dev/sda: 21.4 GB, 21474836480 bytes Disk /dev/sdb: 4294 MB, 4294967296 bytes
That's it – a very simple way for you to determine the number of disks in your system while also confirming the capacity available for your needs. fdisk command is actually a very powerful disks management tool which allows you to manage partitions – create and delete them or modify the type of each partition. I will be sure to revisit this command some other time cause usage above doen't do this wonderful Unix command any justice.